【LeetCode】868.二进制间距

#!/usr/bin/python3
# -*- coding: utf-8 -*-
# @Time: 2019/3/16
# @Author: xfLi
# The file...

# 动态规划

def binaryGap(N):
    bin_N = bin(N)[2:]
    max_distance = 0
    idx = 0
    if bin_N.count('1') < 2:
        return 0
    for i in range(len(bin_N)):
        if bin_N[i] == '1':
            if max_distance < i - idx:
                max_distance = i - idx
            idx = i
    return max_distance
if __name__ == '__main__':
    N = 8
    result = binaryGap(N)
    print(result)

猜你喜欢

转载自blog.csdn.net/qq_30159015/article/details/88606407