code: int pop(int x) {
          x = x - ((x >>> 1) & 0x55555555);
          x = (x & 0x33333333) + ((x >>> 2) & 0x33333333);
          x = (x + (x >>> 4)) & 0x0F0F0F0F;
          x = x + (x >>> 8);
          x = x + (x >>> 16);
          return x & 0x0000003F;
      }
docs: /*
  Count the number of 1-bits in a 32-bit integer using a divide-and-conquer strategy
  see Hacker's Delight section 5.1