输入一个无符号整数x,输出x的二进制表示中1的个数.
输入:
76584
输出:
7
资源限制
时间限制:1.0s 内存限制:256.0MB
思路:
二进制的求法 是:把一个数字除以2,然后取余反转排序
该题没有要求求出二进制,只是求1的个数,所以使用一个while循环用来计数就行了
代码块:
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int cnt = 0;
while(n > 0){
int temp = n%2;
if(temp == 1)cnt++;
n /= 2;
}
System.out.println(cnt);
}
}