数字游戏 不正经题解
2025-06-22 09:55:58
发布于:北京
88阅读
0回复
0点赞
众所周不知,有一个函数叫 __builtin_popcount(),用于计算一个无符号整数二进制下1的个数,所以我们可以先把这个01串转为十进制,再使用__builtin_popcount()函数计算1的个数 [doge]
#include <bits/stdc++.h>
using namespace std;
int f(int n){
int k=1,ans=0;
while (n){
if (n&1) ans+=k;
k*=2;
n/=10;
}
return ans;
}
int main(){
int n;
cin>>n;
cout<<__builtin_popcount(f(n));
}
这里空空如也
有帮助,赞一个