/ ALGORITHM

(codility with python) BinaryGap


lesson1 - BinaryGap

https://app.codility.com/programmers/lessons/1-iterations/binary_gap/


def solution(N):
    binary_n = (bin(N)[2:]).strip('0').split('1')
    return len(max(binary_n))

solution(1041) # 5

첫번째 문제여서 쉬울줄 알았는데 헤매다가 strip와 split를 같이 쓴다는 힌트를 얻어 푼 문제다 결국 답을 보고 풀었다.. 아놔…


strip와 split

def solution(N):
    binary1 = N.lstrip('2').split('1') # left 문자열 왼쪽기준으로 2라는 문자열 앞에 있는 데이터만 처리 + split()로 1을 기준으로 문자열 자름
    binary2 = N.rstrip('2').split('1') # right 문자열 오른쪽 기준으로 2라는 문자열 오른쪽에 있는 데이터만 처리 + split()로 문자열 자름
    binary3 = N.strip('2').split('1') # 2라는 문자열 양쪽을 기준으로 2라는 문자열 양쪽에 있는 데이터 처리
    print(binary1)
    print(binary2)
    print(binary3)


solution('12222122')