算法思想:通过异或运算来查找唯一出现奇数次的数字。由于任何数与0异或得到它自己,相同的数异或得到0,因此将数组中的所有数字进行异或操作,结果就是唯一出现奇数次的数字。
#include <stdio.h>
int main(){
int length; //输入要输的数字个数
int result=0;
scanf("%d",&length);
for(int i=0;i<length;i++){
int num;
scanf("%d",&num);
result^=num; //将输入的数字循环进行异或操作,最后剩下的数就是唯一出现奇数次的数字
}
printf("%d",result);
return 0;
}
示例1:
3
2 2 2
2
示例2:
5
1 2 2 3 3
1
示例3:
3
1 2 3
0