题解 | #求int型正整数在内存中存储时1的个数#
求int型正整数在内存中存储时1的个数
https://www.nowcoder.com/practice/440f16e490a0404786865e99c6ad91c9
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int k = in.nextInt();
int count = 0;
do {
if ( k % 2 == 1)
count++;
k = k / 2;
} while (k >= 1);
System.out.println(count);
}
}
解题思路:
1, 十进制正整数转化为二进制, 可以使用除2取余的方法;
2, 因此对余数中出现的1进行计数即可
正浩创新EcoFlow公司福利 754人发布