问题 7039 --位运算3

7039: 位运算3★★

时间限制: 1 Sec  内存限制: 128 MB
提交: 12  解决: 11
[提交][状态][命题人:]

题目描述

找出每个数对应二进制数中的最右侧“1”所在位的权值,然后对所有数最右侧1的权值进行按位异或运算。
如10对应的二进制为1010,其最右侧1的权值为2;
而48对应的二进制为110000,其最右侧1的权值为16;

输入

第一行为n(1<n<=1000)
第二行为n个正整数a1,a2,...,an(1<=ai<=1e9)

输出

对所有数最右侧1的权值进行按位异或运算的结果。
样例输入
Copy
3
10 48 192
样例输出
Copy
82

提示

测试样例中:
10对应的二进制为1010,其最右侧1的权值为2,权值的二进制表示为10。
48对应的二进制为110000,其最右侧1的权值为16,权值的二进制表示为10000。
192对应的二进制为11000000,其最右侧1的权值为64,权值的二进制表示为1000000。
进行异或运算:00000010^00010000^01000000=01010010,因此答案为82。

来源

[提交][状态]