一、题目要求
二、题目解析以及源代码
#includeusing namespace std; const int N=1e5+10; int a[N]; int n; int main() { cin>>n; for(int i=0;i >a[i]; while(a[i]) { k+=a[i]&1; a[i]=a[i]>>1; } cout< 用变量k来计算当前1的个数,a[i]的二进制不是一就是0,所以将相与后的结果全部相加,最后输出。注意:每次相与后a[i]的二进制数向右移动一位。(欢迎指出错误)



