Algorithms in Python/Programmers - ALGO ⭐️

이진 변환 반복하기

cat_no2 2024. 8. 28. 09:54

def convert(length): 
    result = ""
    while length > 0:
        if length % 2 == 0:
            result = '0' + result
        else:
            result = '1' + result
        length //= 2
    return result

def solution(s): 
    counter = 0 
    numOfOnes = 0 
    numOfZerosToRemove = 0 
    
    while len(s) > 1:
        counter += 1 
        numOfOnes = 0  
        for num in s:
            if num == '1':
                numOfOnes += 1
        numOfZerosToRemove += len(s) - numOfOnes
        s = convert(numOfOnes) 
    return [counter, numOfZerosToRemove]

'Algorithms in Python > Programmers - ALGO ⭐️' 카테고리의 다른 글

[1차] 캐시  (0) 2024.09.28
영어 끝말잇기  (1) 2024.08.28
짝지어 제거하기  (0) 2024.07.11
최솟값 만들기  (0) 2024.07.02
카펫 - 완전탐색  (0) 2024.06.05