[프로그래머스 LV2] 이진 변환 반복하기

Junyoung Park·2021년 12월 27일
0

코딩테스트

목록 보기
27/631

1. 문제 설명

이진 변환 반복하기

2. 문제 분석

'이진 변환'이라는 게 0을 없애고 남은 길이를 이진법으로 변환하는 두 가지 과정을 모두 포함한다는 것을 주의. bin 함수를 사용해서 편하게 만들 수 있었다. 몰랐다면 이진법 함수를 새로 구현해야 했을텐데... 편리하다.

3. 나의 풀이

def solution(s):
    answer = [0, 0]
    
    while(True):
        cur_len = len(s)
        s = s.replace('0', '')
        zero_len = cur_len - len(s)
        s = bin(len(s))[2:]
        s = str(s)
        answer[0] += 1
        answer[1] += zero_len
        if s == '1': break
    
    return answer
profile
JUST DO IT

0개의 댓글