#include<stdio.h>
#include<string.h>
#define MAXN 10
int FindNumber(int a[],int n)
{
int bits[32]={0};
int i,j;
int result;
result=0;
memset(bits,0,32*sizeof(int));
for(i=0;i<n;i++)
for(j=0;j<32;j++)
bits[j]+=((a[i]>>j)&1);
for(j=0;j<32;j++)
if((bits[j])%3!=0)
result+=(1<<j);
return result;
}
int main()
{
int a[MAXN]={1,2,3,1,2,3,4,1,2,3};
printf("只出现一次的数\n");
printf("%d \n",FindNumber(a,MAXN));
system("PAUSE");
return 0;
}