A7584 | [ABC141F] Xor Sum 3
时间限制1s
内存限制256MB
通过 / 提交0/0
题目描述
有 $N$ 个非负整数 $A_1,\ A_2,\ ...,\ A_N$。
现在要将其中至少 $1$ 个、至多 $N-1$ 个数涂成红色,其余的涂成蓝色。
一次涂色的**美丽度**定义为“所有红色整数的 $ \text{XOR} $”与“所有蓝色整数的 $ \text{XOR} $”之和。
请你求出所有可能涂色方案中美丽度的最大值。
$ \text{XOR} $ 的定义如下:对于 $n$ 个非负整数 $x_1, x_2, ..., x_n$,它们的 $ \text{XOR} $ $x_1 \oplus x_2 \oplus ... \oplus x_n$ 定义为:
- 将 $x_1, x_2, ..., x_n$ 都用二进制表示后,对于每一个 $2^k(k \geq 0)$ 位,如果这些数中该位为 $1$ 的个数是奇数,则 $ \text{XOR} $ 的该位为 $1$,否则为 $0$。
例如,$3 \oplus 5 = 6$。
现在要将其中至少 $1$ 个、至多 $N-1$ 个数涂成红色,其余的涂成蓝色。
一次涂色的**美丽度**定义为“所有红色整数的 $ \text{XOR} $”与“所有蓝色整数的 $ \text{XOR} $”之和。
请你求出所有可能涂色方案中美丽度的最大值。
$ \text{XOR} $ 的定义如下:对于 $n$ 个非负整数 $x_1, x_2, ..., x_n$,它们的 $ \text{XOR} $ $x_1 \oplus x_2 \oplus ... \oplus x_n$ 定义为:
- 将 $x_1, x_2, ..., x_n$ 都用二进制表示后,对于每一个 $2^k(k \geq 0)$ 位,如果这些数中该位为 $1$ 的个数是奇数,则 $ \text{XOR} $ 的该位为 $1$,否则为 $0$。
例如,$3 \oplus 5 = 6$。
输入格式
输入从标准输入读入,格式如下:
> $N$ $A_1$ $A_2$ $...$ $A_N$
> $N$ $A_1$ $A_2$ $...$ $A_N$
输出格式
输出最大美丽度。
输入输出样例
输入 #1
3 3 6 5
输出 #1
12
输入 #2
4 23 36 66 65
输出 #2
188
输入 #3
20 1008288677408720767 539403903321871999 1044301017184589821 215886900497862655 504277496111605629 972104334925272829 792625803473366909 972333547668684797 467386965442856573 755861732751878143 1151846447448561405 467257771752201853 683930041385277311 432010719984459389 319104378117934975 611451291444233983 647509226592964607 251832107792119421 827811265410084479 864032478037725181
输出 #3
2012721721873704572
## 限制
- 所有输入均为整数。
- $2 \leq N \leq 10^5$
- $0 \leq A_i < 2^{60}\ (1 \leq i \leq N)$
## 样例解释 1
当将 $(3, 6, 5)$ 分别涂成 $(蓝, 红, 蓝)$ 时,美丽度为 $6 + (3 \oplus 5) = 12$。不存在比 $12$ 更高的美丽度方案,所以答案为 $12$。
## 样例解释 3
$A_i$ 以及答案可能不会被 $32$ 位整数型所容纳。
- 所有输入均为整数。
- $2 \leq N \leq 10^5$
- $0 \leq A_i < 2^{60}\ (1 \leq i \leq N)$
## 样例解释 1
当将 $(3, 6, 5)$ 分别涂成 $(蓝, 红, 蓝)$ 时,美丽度为 $6 + (3 \oplus 5) = 12$。不存在比 $12$ 更高的美丽度方案,所以答案为 $12$。
## 样例解释 3
$A_i$ 以及答案可能不会被 $32$ 位整数型所容纳。
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?