题解 | 求int型正整数在内存中存储时1的个数
求int型正整数在内存中存储时1的个数
https://www.nowcoder.com/practice/440f16e490a0404786865e99c6ad91c9
#include <iostream>
#include <vector>
#include <algorithm>
int main(){
int n, count;
std::vector<int> red;
std::cin >> n;
bool negative = n < 0;
while(true){
red.push_back(n % 2);
n /= 2;
if(n == 1){
red.push_back(1);
break;
}else if(n == 0){
break;
}
}
std::reverse(red.begin(), red.end());
std::cout << std::count(red.begin(), red.end(), 1);
return 0;
}
查看10道真题和解析