Algorithm/Programmers

[Python] 이진 변환 반복하기

느낌표 공장장 2021. 6. 13. 23:22
def solution(s):
    
    zero = 0
    change = 0
    
    while s != "1" :
        one = s.count('1')
        zero += s.count('0')
        
        s = format(one, 'b')
        change += 1
        
    return [change, zero]

풀이

1. s가 1이 될때까지 while문을 반복한다.

2. 1의 개수를 세고, 개수를 이진수로 변환한다.

3. 0의 개수는 그때마다 세어 더해준다.

4. 변환한 횟수를 구하기 위해 반복문이 돌때마다 +1해준다.

 

 

 

'Algorithm > Programmers' 카테고리의 다른 글

[Python] 방금 그 곡  (0) 2021.06.14
[Python] 캐시  (0) 2021.06.13
[Python] 프렌즈4블록  (0) 2021.06.11
[Python] 구명보트  (0) 2021.06.10
[Python] 카펫  (0) 2021.06.07