题解 | #求int型正整数在内存中存储时1的个数#
求int型正整数在内存中存储时1的个数
https://www.nowcoder.com/practice/440f16e490a0404786865e99c6ad91c9
import java.util.Scanner;
import java.util.HashMap;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
/*
2|5
2|2 ... 1
2|1 ... 0
2|0 ... 1
*/
HashMap<Integer, Integer> map = new HashMap<>();
map.put(0,0);
map.put(1,0);
while (num != 0){
int ret = num % 2;
if (ret == 1){
Integer i = map.get(1);
i++;
map.put(1,i);
}
num /= 2;
}
System.out.println(map.get(1));
}
}
