是否有任何固定的Python方法可以将Integer(或Long)转换为Python中的二进制字符串?
Google上有无数的dec2bin()函数......但我希望我可以使用内置的函数/库.
我必须找到整数的二进制间隙。
正整数 N 内的二进制间隙是 N 的二进制表示中两端都被 1 包围的连续零的最大序列。
例如:N = 1041 二进制:10000010001 结果:5(5 个零被 1 包围)
下面是我的代码,虽然 bin_no[22] 是 1 但它永远不会进入 if 语句。
def solution(N):
bin_no = f'{N:32b}'
print(len(bin_no))
count = []
for i in range(len(bin_no)):
if bin_no[i] == 1:
count[i] = 0
j=i
while(bin_no[j+1] != 1):
count[i] +=1
j +=1
print (count[i])
print(solution(529))
Run Code Online (Sandbox Code Playgroud) python ×2