/**
把一个整数减去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); } }