题解 | 求最大连续bit数
求最大连续bit数
https://www.nowcoder.com/practice/4b1658fd8ffb4217bc3b7e85a38cfaf2
import sys
n = int(input())
if n == 0:
print(0)
A = []
B = []
while n > 0: # 把n分解成2进制数
if n % 2 == 1:
A.append(1)
else:
A.append(0)
n = n // 2
count = 0
i = 0
while i < len(A): # 统计n中有多少个1,多少个0
if A[i] == 1:
count += 1
else:
B.append(count)
count = 0
i += 1
# 处理最后一组连续的1
if count > 0:
B.append(count)
j = 0
Max = B[0]
while j < len(B):
if B[j] > Max:
Max = B[j]
j += 1
print(Max)

