给你一个整数数列,保证只有一个数出现过奇数次,输出它。
多组测试数据。 每组测试数据第一行为一个整数n,代表该数列元素个数。(1 <= n <= 500000) 第二行为n个整数ai,以空格隔开。(-1000000 <= ai <= 1000000)
输出一行表示这个出现奇数次的数。
从头到尾异或一遍即可,两数相同则为0,0和任何数异或还是任何数,否则超时。。。。。。
# include<stdio.h>
# include<algorithm>
using namespace std;
int a[500010];
int main(){
int i,n;
while(~scanf("%d",&n)){
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=1;i<n;i++)
a[0]=a[0]^a[i];
printf("%d\n",a[0]);
}
}