原题链接:Counting Bits
题解:
class Solution {
public:
vector<int> countBits(int num) {
/*
i的1的个数等于i>>1+i&1的,然而i>>1在已经计算出来
Time Complexity:O(N)
Space Complexity:O(N)
*/
vector<int>ivec(num+1,0);
for(int i=1;i<=num;i++){
ivec[i]=ivec[i>>1]+(i&1);
}
return ivec;
}
};