状态转移 dp[i] = dp[i>>1] + (i&1).
class Solution(object):
def countBits(self, num):
"""
:type num: int
:rtype: List[int]
"""
dp = [0]*(1+num)
for i in range(1,num+1):
dp[i] = dp[i>>1]+(i&1)
return dp