fork download
  1. #include <stdio.h>
  2.  
  3. int getSingleOccurrence(int nArray[], int n){
  4. int ones = 0, twos=0;
  5. int common_bit_mask=0;
  6. int i;
  7.  
  8. for(i=0;i<n;i++){
  9. twos|= ones & nArray[i];
  10. ones^=nArray[i];
  11. common_bit_mask = ~(ones & twos);
  12. ones&=common_bit_mask;
  13. twos&=common_bit_mask;
  14. }
  15. return ones;
  16. }
  17.  
  18.  
  19. int main(){
  20. int nArray[]={3,3,1,3,6,1,6,7,1,6};
  21. int result = getSingleOccurrence(nArray,10);
  22. printf("Result %d", result);
  23. return 0;
  24. }
Success #stdin #stdout 0s 2292KB
stdin
Standard input is empty
stdout
Result 7