import re
while True:
try:
n = bin(int(input()))[2:]
lis = []
for i in range(len(n)):
for j in range(i,len(n)):
if re.fullmatch(r'[1]*',n[i:j+1]):
lis.append(len(n[i:j+1]))
print(max(lis))
except:
break
用正则表达式的解法

京公网安备 11010502036488号