授勋 Link 解题思路 二进制拆分。 code #include<iostream> #include<cstdio> using namespace std; int n; int main() { cin>>n; while(n--) { int a,ans=0; scanf("%d",&a); while(a) { ans+=a&1; a>>=1; } printf("%d\n",ans); } }