파이썬 알고리즘-105 (프로그래머스) 이진 변환 반복하기

3889 단어 algorithmalgorithm

코드

def solution(s):
    answer = []
    zero_cnt=0
    cnt=0
    while len(s)>1:
        zero_cnt+=s.count('0')
        cnt+=1
        s=s.replace('0','')
        length=len(s)
        s=bin(length)[2:]
    answer=[cnt,zero_cnt]
        
    return answer

다른 사람의 풀이

def solution(s):
    a, b = 0, 0
    while s != '1':
        a += 1
        num = s.count('1')
        b += len(s) - num
        s = bin(num)[2:]
    return [a, b]

좋은 웹페이지 즐겨찾기