POJ 3708 1的个数
- 时间限制:
- 1000ms
- 内存限制:
- 65536kB
- 描述
- 给定一个十进制整数N,求其对应2进制数中1的个数
- 输入
- 第一个整数表示有N组测试数据,其后N行是对应的测试数据,每行为一个整数。
- 输出
- N行,每行输出对应一个输入。
- 样例输入
-
42100100066
- 样例输出
-
1362
(1)、源代码:
#include <iostream>
using namespace std;
int main()
{
int n, sum, count;
cin >> n;
while(n-- > 0){
cin >> sum;
count = 0;
while(1){
if(sum % 2 != 0)
count++;
sum /= 2;
if(sum == 0)
break;
}
cout << count << endl;
}
return 0;
}
(2)、解题思路:略
(3)、可能出错:略