题目描述:
解题思路:
题目解读:
b数组=a数组异或x,那最后b数组的异或,可以分解为a数组做异或运算和x自己做异或。
这时候就对n分奇偶讨论即可。
n为奇数时,bi的异或和为bi。
n为偶数时,bi的异或和为0。
代码实现:
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
void Solve() {
int n, tmp;
int res = 0;
scanf("%d", &n);
for (int i = 0; i < n; ++i) {
scanf("%d", &tmp);
res ^= tmp;
}
if (n % 2 == 1) printf("%d\n", res);
else if (res == 0) printf("0\n");
else printf("-1\n");
return;
}
int main() {
int t;
scanf("%d", &t);
while (t--) Solve();
return 0;
}
遇到的错误: