/**
把一个整数减去1和原来的整数做位与运算,得到的结果相当于把整数的二进制位的最右边的1变成0.
1的二进制位是01, 其他的位补0,
与运算规则 0
**/
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int count =0;
while(n!=0){
n = n&(n-1);
count++;
}
System.out.print(count);
}
}


京公网安备 11010502036488号