异或运算
题意:一个集合 所有子集的所有元素 进行异或运算 的结果
如题例子:{1, 2, 3} 所有子集:
{1} {2} {3} {1,2} {1,3} {2, 3} {1,2,3}
每个元素出现次数为 : 2 的(n-1)次方;;;(算是数学定律 很容易推出来的)
n == 1 只有一个数 输出就好
否则 : 异运算或后结果必为 0 ; -------------------- int x ; x ^ x = 0 ; 恒成立
#include <iostream>
#include <cstdio>
using namespace std;
int main() {
int T, n, m;
long long x;
scanf("%d", &T);
while(T--) {
scanf("%d", &n);
m = n;
while(m--) scanf("%lld", &x);
if(n == 1) printf("%lld\n", x);
else printf("%d\n", 0);
}
return 0;
}