AcWing 801. 二进制中1的个数

AcWing 801. 二进制中1的个数


#include <bits/stdc++.h>
using namespace std;
int lowbit(int x){
    return x&-x;
}
int main(){
    int n;
    cin>>n;
    while(n--){
        int x,res=0;
        cin>>x;
        while(x) /*printf("当前x的值:%d ",x),*/x-=lowbit(x),res++;
        //printf("%d\n",x);
        //cout<<"1的个数:"<<res<<" ";
        cout<<res<<" ";
        //printf("\n---\n");
    }
    return 0;
}

AcWing 801. 二进制中1的个数

上一篇:AcWing 797. 差分


下一篇:AcWing 799. 最长连续不重复子序列