\(o(n)\)求出\(1\sim n\)中每个数二进制中\(1\)的个数 for(int i=1;i<=n;++i) bit[i]=bit[i^(i&(-i))]+1;
for(int i=1;i<=n;++i) bit[i]=bit[i^(i&(-i))]+1;
枚举\(s\)的子集 for(int i=s;i;i=(i-1)&s)
for(int i=s;i;i=(i-1)&s)