Leetcode338 比特位计数[DP]

/ 0评 / 0

题目描述

file

解法

# class Solution:
#     def countBits(self, num: int) -> List[int]:
#         res = []
#         for i in range(num+1):
#             temp = bin(i)[2:]
#             res.append(temp.count('1'))
#         return res
class Solution:
    def countBits(self, num: int) -> List[int]:
        if not num:
            return [0]
        res = [0,1]
        for i in range(2,num+1):
            if(i%2==0):
                res.append(res[i//2])
            else:
                res.append(res[i//2]+1)
        return res

 

Note

发表评论

电子邮件地址不会被公开。