338.比特位计数
题目描述
给你一个整数 n ,对于 0 <= i <= n 中的每个 i ,计算其二进制表示中 1 的个数 ,返回一个长度为 n + 1 的数组 ans 作为答案。
示例 1:
输入:n = 2
输出:[0,1,1]
解释:
0 –> 0
1 –> 1
2 –> 10
思路
代码
class Solution(object):
def countBits(self, n):
"""
:type n: int
:rtype: List[int]
"""
# result = []
# for i in range(0, n+1):
# result.append(bin(i).count('1'))
# return result
return [bin(i).count('1') for i in range(0, n+1)]