CodingTest/Programers

[programers] 프로그래머스(파이썬) : 124 나라의 숫자

JunJangE 2022. 4. 29. 01:23

문제

 

코딩테스트 연습 - 124 나라의 숫자

 

programmers.co.kr

알고리즘

- 3진수로 확인하는 방법과 유사하게 문제를 수행한다.

- 다른 점이라면 3으로 나누어 떨어졌을 때 0으로 자리 이동을 안 해주기 위해 n-1을 해준다.(0이 없기 때문이다.)

코드

def solution(n):
    answer = ''
    numbers = ['4', '1', '2']
    
    # 3진수로 확인 => 다른점은 3으로 나누어 떨어질 때 n - 1를 해준다.(0이 없기 때문.)
    while n > 0:
        n, mod = divmod(n, 3) # 몫, 나머지
        answer = numbers[mod] + answer 
        
        # 나머지가 0이라면 3으로 나누어 떨어 진 것으로 자릿수 이동 x
        if mod == 0:
            n -= 1
    
    return answer

github

 

GitHub - junjange/CodingTest: 내가 푼 코딩 테스트 문제와 해결법

내가 푼 코딩 테스트 문제와 해결법. Contribute to junjange/CodingTest development by creating an account on GitHub.

github.com