CF2056F2

题目大意:

有一个长度为 \(n\) 的满足 \(0 \le a_{i} < m\) 的未知的数组 \(a\),它满足对于任意在 \(a\) 中出现过的数,他们的出现数量的大小关系和数值相关。
问你对于所有满足这个条件的长度为 \(n\) 的数组 \(a\) 的中位数的异或和。
\(\log_{n} \le 2 \times 10^5, m \le 10^9\)

解题思路:

考虑 中位数 和 \(n \le 2^{2 \times 10^5}, m \le 10^9\) 都是十分困难的,考虑利用起来这个异或的性质。
异或的优势就在于两个相同的数异或起来等于 \(0\),也就是对于同一个中位数之和能构成这个中位数的数列个数的奇偶有关。

注意到一个可重集任意排列的中位数都一样,而出现的次数是

\[\binom{n}{c_{1}} \times \binom{n - c_{1}}{c_{2}} \dots \binom{c_{m}}{c_{m}} \]

由于这个东西是偶数是没用的,而他是奇数当且仅当每个 \(n - c_{i}\) 都在二进制上包含 \(c_{i+1}\)

也就是说每个 \(c_{i}\) 都是 \(n\) 的子集。
此时我们注意到中位数是排名 \(\frac{n+1}{2}\) 的,但我们的 \(n\) 的最高位 $ > \frac{n}{2}$。
又因为数值最大,次数最多,所以中位数一定是最大值。

而我们现在刻画出来的问题很清晰了,可以暴力枚举有多少个不同的数,再枚举最大值,此时需要将 \(cnt\) 个不同的物品放到 \(k\) 个不能空且一样的盒子里。
这是第二类斯特林数。
\(O(\log^2{n} + m \log n)\)

再次利用异或的性质,我们只关心 \(S_{cnt, k}\) 的奇偶,根据结论 \((cnt - k) & \lfoor \frac{k - 1}{2} \rfloor = 0\) 时等于 \(1\)
那么数形 \(dp\) 即可。

posted @ 2026-02-28 16:29  positive_deviation  阅读(1)  评论(0)    收藏  举报