Problem2149--异或

2149: 异或

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 187  Solved: 122
[Status] [Submit] [Creator:]

Description

计算机里面有一个异或运算符⊕。

对于两个整数 a 和 b 来说, a ⊕ b 的结果满足:如果 a 的二进制表示中的某一位和 b 的二进制表示中的同一位上数字相同,则 a ⊕ b 在在该位上为 0,若同一位上数字不同,则 a ⊕ b 在该位上为 1。

比如:

整数 13 对应的八位二进制数为:00001101
整数 15 对应的八位二进制数为:00001111
所以 13 ⊕ 15 对应的八位二进制数为:00000010,对应的十进制整数为 2


在c++中^是异或的运算符,比如要计算13 ⊕ 15的结果,可以直接用cout<<(13^15)得到;

有关”异或”运算符的更多说明可以参见百度百科:https://baike.baidu.com/item/%E5%BC%82%E6%88%96/10993677?fr=aladdin

现在给你 n 个整数 A1, A2, ……, An,求 A1 ⊕ A2 ⊕ …… ⊕ An 的结果。

Input

第一行,一个整数 n(1 ≤ n ≤ 1000)。
第二行,n 个整数 A1, A2, ……, An(1 ≤ Ai ≤ 1,000,000),两两之间以一个空格分隔。

Output

输出一个整数,表示 A1 ⊕ A2 ⊕ …… ⊕ An 的结果。

Sample Input Copy

【样例输入1】
2
13 15
【样例输出1】
2
【样例输入2】
5
2 5 7 6 11
【样例输出2】
13

Source/Category