LeetCode 338. Counting Bits

来源:互联网 发布:linux 双系统安装 编辑:程序博客网 时间:2024/04/25 20:23

1的个数可以归纳为,num/2 中的 1的个数 加上 num%2中 1 的个数

class Solution {public:    vector<int> countBits(int num) {        vector<int> vec;        if(num == 0) vec.push_back(0);        if(num == 1) {vec.push_back(0);vec.push_back(1);}        else {            vec.resize(num+1);            vec[1] = vec[2] = 1;            for(int i =3 ;i<=num;i++)                vec[i] = vec[i/2] + vec[i%2];        }        return vec;    }};


0 0