#include<bits/stdc++.h>
#define mod 10001
using namespace std;
int cnt;
int ANS(int num) {
int ans = 0 ;
for (int i=0;i<32;i++) {
ans += !!(num&(1<<i));
}
return ans ;
}
int _ANS(int num) {
int ans=0;
for (int i=num;i;i-=i&-i) {
++ans;
}
return ans;
}
int __ANS(int num) {
ing ans=0;
while(num) {
num=num&(num-1);
++ans;
}
}
void er(int n) {
if(!n) return;
er(n/2);
cout<<n%2;
++cnt;
}
int main() {
int n;
while(cin>>n)
cout<<ANS(n)<<endl;
}
位运算求整数二进制有几个1
于 2020-03-09 18:31:19 首次发布
本文探讨了使用位操作进行二进制中1的数量计数的三种方法,并提供了一个递归函数来将十进制数转换为二进制形式。通过深入分析代码,读者可以理解位操作的高效性和递归算法的应用。
439

被折叠的 条评论
为什么被折叠?



