加粗样式
@TOC
统计非负整数二进制展开中数位1的总数
#统计非负整数二进制展开中数位1的总数。如整数64 的二进制展开为00000000 00000000 00000000 00100000 ,数位1的总数为1。
输入格式:
输入一个整数n , 题目保证n 不大于 10的18次方。
输出格式:
输出该整数二进制展开中数位1的总数。
输入样例:
在这里给出一组输入。例如:
441
输出样例:
在这里给出相应的输出。例如:
6
c++
#include<iostream>
using namespace std;
int main()
{
int count1;
long long int num;
cin>>num;
int count=0;
while(num)
{
++count;
num&=num&(num-1);
}
cout<<count;
return 0;
}