BIT MANIPULATION

can any one explain the highlighted code
->the code is used to find a number which is present only one time in an array
example->[1,1,1,2,2,2,3,3,3,4]
output is ->4 like that

#include

using namespace std;

int main()
{
int tc;
cin>>tc;
while(tc–)
{
int size;
cin>>size;
int arr[size];
for(int i=0;i<size;i++)
{
cin>>arr[i];
}
int bit[32]={0};
for(int i=0;i<size;i++)
{
int number=arr[i];
int j=0;
while(number>0)
{
bit[j]+=(number&1);
j++;
number=number>>1;
}

    }
    int ans=0,pos=1;
    **for(int i=0;i<32;i++)**

** {**
** bit[i]=bit[i]%3;**
** ans+=bit[i]pos;*
** pos=pos<<1;**
** }**
cout<<ans<<endl;
}

return 0;

}