#C. 华附消消乐

    Type: Default 1000ms 256MiB

华附消消乐

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

说明

老师手上有 $n$ 个同学的成绩单, 第 $i$ 个同学的成绩为 $a_i$。

由于义务教育阶段不能公布排名,老师打算用这些成绩来玩消消乐。

每一轮,老师会取出两张成绩单,将两张成绩单上的成绩异或起来,异或的结果为本轮得分,然后销毁其中一张成绩单。

可想而知,经过 $n-1$ 轮的消消乐,只剩下一张成绩单。

最后,将老师的每一轮消消乐的得分相加,得到总得分。

请你帮老师计算一下,消消乐的总得分最多是多少。

C++里面,输出9和16的异或结果: cout<< (9^16);

异或定义:0^1=1^0=1, 0^0=1^1=0,可以理解为二进制下的不进位加法。

输入格式

第一行一个整数 $n$,表示成绩单的数量。

第二行有 $n$ 个整数,分别是 $a_1,a_2,...a_n$。

输出格式

一个整数,表示最高得分。

样例

4 
3  5  12  6
34

提示

第一次选择5(0101)和12(1100),获得 9(1001)分,销毁5;

第二次选择3(0011)和12(1100),获得15(1111)分,销毁3;

第三次选择6(0110)和12(1100),获得10(1010)分,销毁6;

总得分为34.

可以证明没有更高得分的消去方法。

30% 数据,  $n\le 20$, $1\le a_i \le 100$

另有20% 数据,  $n\le 100$ , $0 \le a_i \le 2$

100% 数据, $n\le 2000$, $0 \le a_i \le 2^{30}-1$

2023-2024下信息提高组选修课期末考

Not Attended
Status
Done
Rule
IOI
Problem
4
Start at
2024-6-22 10:45
End at
2024-6-24 4:45
Duration
2 hour(s)
Host
Partic.
15