已解决 俞景熙 高级守护 #include<iostream> #include<cstdio> using namespace std; int n; int main(){ cin>>n; for(int i=0;i<=n;i++){ int t=i,cnt=0; while(t){ if(t%2){ cnt++; } t/=2; } cout<<cnt<<" "; } return 0; }
已采纳 汪恺恒 中级启示者 这题可以用一个函数 __builtin_popcount(x) 表示求x在二进制中有多少个1 你最好加个万能头 #include<bits/stdc++.h> 注意,函数前面有两个下划线