求n的第k位(个位从0开始)数字
n >> k & 1;
返回n的最后一位1
lowbit(n){ return n & -n };
#include<iostream>
using namespace std;
int n;
int lowbit(int x){
return x & -x;
}
int main(){
cin>>n;
while(n--){
int x;
cin>>x;
int res=0;
while(x)x-=lowbit(x),res++;
cout<<res<<' ';
}
return 0;
}