题解 | #求最大连续bit数#

求最大连续bit数

https://www.nowcoder.com/practice/4b1658fd8ffb4217bc3b7e85a38cfaf2

num=int(input())
conversion=bin(num)
list1=str(conversion)
list2=[]
max=0
if num==1:
    print(1)
else:
    for i in range(len(list1)):
        if list1[i]=='1':
            max=1
            j=i+1
            if j<len(list1)-1:  #针对后几位是1
                while list1[j]=='1' and j<len(list1)-1:
                    max=max+1
                    j=j+1
                    list2.append(max)
                if j==len(list1)-1 and list1[j]=='1':
                    max=max+1
                    list2.append(max)
            else:
                list2.append(max)
        list2.append(max)        #针对只有首位是1
    print(sorted(list2)[-1])

全部评论

相关推荐

HoePointer:把重点可以标黑,简历精简一下,然后把你的项目放在 github 或者 gitee 上面,readme 写好看一点(一般面试官有可能会翻你的网页)
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务