Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int countSetBits(int n)
- {
- n++;
- int count = n/2;
- int powerof2 = 2;
- while (powerof2 <= n) {
- int totalpairs = n/powerof2;
- count += (totalpairs/2) * powerof2; // setbits in pairs
- count += (totalpairs&1) ? (n % powerof2) : 0; // left out setbits
- powerof2 = powerof2<<1;
- }
- return count;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement