801. 二进制中1的个数Acwing

#include<iostream>
using namespace std;
const int N=1e5+10;
int q[N];
int low(int x){
    return x&(-x);
}
int main(){
    int n;
    cin>>n;
    for(int i=0;i<n;i++){
        scanf("%d",&q[i]);
    }
    for(int i=0;i<n;i++){
        int res=0;
        while(q[i])
        {
            q[i]-=low(q[i]);
            res++;
        }
        cout<<res<<" ";
    }
    
}

 

posted @ 2022-10-29 22:09  山海自有归期  阅读(16)  评论(0编辑  收藏  举报