#ABC304G. 中位数的最大值

中位数的最大值

中位数的最大值

题目描述

给你一个长度为 2N2N 的序列:A=(A1,A2,…,A2N)A = (A_1, A_2, \ldots, A_{2N})。

通过对序列 AA 的元素进行重新排列,求序列 $(A_1 \oplus A_2, A_3 \oplus A_4, \ldots, A_{2N-1} \oplus A_{2N})$ 的中位数所能取得的最大值。

这里,⊕\oplus 表示按位异或。

什么是按位异或?非负整数 AA 和 BB 的按位异或,记作 A⊕BA \oplus B,定义如下:

在 A⊕BA \oplus B 的二进制表示中,第 2k2^k 位(k≥0k \ge 0)的数字为 11,当且仅当 AA 和 BB 的二进制表示中第 2k2^k 位的数字恰有一个为 11,否则为 00。

例如,3⊕5=63 \oplus 5 = 6(二进制表示:011⊕101=110011 \oplus 101 = 110)。

另外,对于长度为 LL 的序列 BB,BB 的中位数是将 BB 按升序排序得到的序列 B′B' 中第 ⌊L2⌋+1\lfloor \frac{L}{2} \rfloor + 1 个位置的值。

输入格式

输入按以下格式从标准输入给出:

N
A_1 A_2 … A_{2N}

输出格式

输出答案。

样例

4
4 0 0 11 2 7 9 5
14

通过将 AA 重排为 (5,0,9,7,11,4,0,2)(5, 0, 9, 7, 11, 4, 0, 2),得到 $(A_1 \oplus A_2, A_3 \oplus A_4, A_5 \oplus A_6, A_7 \oplus A_8) = (5, 14, 15, 2)$,该序列的中位数为 1414。

不可能通过重排 AA 使 $(A_1 \oplus A_2, A_3 \oplus A_4, A_5 \oplus A_6, A_7 \oplus A_8)$ 的中位数达到 1515 或更大,因此输出 1414。

1
998244353 1000000007
1755654
5
1 2 4 8 16 32 64 128 256 512
192

数据范围

  • 1≤N≤1051 \le N \le 10^5
  • 0≤Ai<2300 \le A_i \lt 2^{30}
  • 所有输入值均为整数。
难度 省选/NOI-
通过率 —
尝试 0
通过 0
ID
2956
类型
传统题
Time Limit
5000ms
Memory Limit
1024MiB
上传者
标签