입력으로 받은 10 진수를 2진수로 변환하고 1과 1 사이의 거리를 구해주는 문제이다.
def solution(N):
binNum = bin(N)
one_idx = []
max_dist = 0
for i in range(0, len(binNum)):
if binNum[i] == "1":
one_idx.append(i)
if len(one_idx) <= 1:
# binary gap의 조건이 만족되지 않았으면 바로 0 return
return 0
for i in range(1, len(one_idx)):
max_dist = max(max_dist, one_idx[i] - one_idx[i-1] -1)
return max_dist
📌 고려해야할 점