#include <stdio.h> int countSetBits(unsigned int n) { int lastBit = 0; int count = 0; for(int i = 0; i < 32; i++) { lastBit = (n >> i) & 0x01; if(lastBit == 1) { count = count+1; lastBit = 0; } } return count; } int main() { int n; scanf("%d", &n); printf("%d", countSetBits(n)); return 0; }
Test Cases
Test Results
Input
5
Expected Output
2