AT_arc173_e [ARC173E] Rearrange and Adjacent XOR
题目描述
给定一个长度为 $N$ 的非负整数列 $A=(A_1,A_2,\dots,A_N)$。对于该整数列,进行如下操作 $N-1$ 次,最终得到长度为 $1$ 的整数列。
- 设 $n$ 为 $A$ 的当前长度。首先,可以任意重新排列 $A$ 中的元素。然后,将 $A$ 替换为长度为 $n-1$ 的非负整数列 $(A_1\ \oplus\ A_2,\ A_2\ \oplus\ A_3,\ \dots,\ A_{n-1}\ \oplus\ A_n)$。
其中,$\oplus$ 表示按位异或(XOR)运算。
经过 $N-1$ 次操作后,得到的长度为 $1$ 的整数列中的元素记为 $X$。请你求出 $X$ 可能取得的最大值。
按位异或(XOR)运算的定义如下:对于非负整数 $A, B$,$A\ \oplus\ B$ 的二进制表示中,第 $2^k$ 位($k\geq 0$)的数值为:若 $A, B$ 的二进制表示在第 $2^k$ 位上仅有一个为 $1$,则该位为 $1$,否则为 $0$。
例如,$3\ \oplus\ 5 = 6$(二进制表示为:$011\ \oplus\ 101 = 110$)。
一般地,$k$ 个非负整数 $p_1, p_2, \dots, p_k$ 的按位异或为 $(\dots((p_1\ \oplus\ p_2)\ \oplus\ p_3)\ \oplus\ \dots\ \oplus\ p_k)$,并且可以证明,这一结果与 $p_1, p_2, \dots, p_k$ 的顺序无关。
输入格式
输入以如下格式从标准输入读入。
> $N$ $A_1$ $A_2$ $\dots$ $A_N$
输出格式
请输出答案。
说明/提示
### 限制条件
- $2 \leq N \leq 100$
- $0 \leq A_i < 2^{60}$
- 输入的所有数均为整数
### 样例解释 1
通过如下 $3$ 次操作,可以将 $A$ 变为 $A=(7)$。
- 第 $1$ 次操作,将 $A=(1,2,3,4)$ 重新排列为 $(3,1,4,2)$。$A$ 被替换为 $(3\ \oplus\ 1,\ 1\ \oplus\ 4,\ 4\ \oplus\ 2) = (2,5,6)$。
- 第 $2$ 次操作,将 $A=(2,5,6)$ 重新排列为 $(2,6,5)$。$A$ 被替换为 $(2\ \oplus\ 6,\ 6\ \oplus\ 5) = (4,3)$。
- 第 $3$ 次操作,将 $A=(4,3)$ 重新排列为 $(4,3)$。$A$ 被替换为 $(4\ \oplus\ 3) = (7)$。
由 ChatGPT 4.1 翻译