- 어떻게 0이 나오는지 고민하다가 너무 오랜 시간이 걸려서 다른 사람의 자료를 참고함.

- 3진법과 거의 유사하나 나누어 떨어지는 경우(0이 나오는 경우) 나오는 몫을 하나 빼고 나머지를 4로 채우는 방식으로 진행하면 해결 가능

def convert_four(n):
    s = ''
    idx = 0
    while n != 0: 
        remainder = n % 3
        q = n // 3
        if n % 3 == 0:
            remainder = 4
            q = q - 1
        s = str(remainder) + s
        n = q

    return s

def solution(n):
    answer = ''
    k = convert_four(n)
    answer = k
    return answer

 

출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges

'알고리즘[Python] > 프로그래머스' 카테고리의 다른 글

[ Lv 2 ] 오픈채팅방  (0) 2021.06.21
[Lv 2] 멀쩡한 사각형  (0) 2021.06.20
[Lv 2] 짝지어 제거하기  (0) 2021.06.20
[Lv 1] 이상한 문자 만들기  (0) 2021.06.19
[Lv 1] 소수 찾기  (0) 2021.06.19

+ Recent posts