반응형

 

문제 설명

124 나라가 있습니다. 124 나라에서는 10진법이 아닌 다음과 같은 자신들만의 규칙으로 수를 표현합니다.

  1. 124 나라에는 자연수만 존재합니다.
  2. 124 나라에는 모든 수를 표현할 때 1, 2, 4만 사용합니다.

예를 들어서 124 나라에서 사용하는 숫자는 다음과 같이 변환됩니다.

10진법       124 나라      10진법       124 나라

1 1 6 14
2 2 7 21
3 4 8 22
4 11 9 24
5 12 10 41

자연수 n이 매개변수로 주어질 때, n을 124 나라에서 사용하는 숫자로 바꾼 값을 return 하도록 solution 함수를 완성해 주세요.

제한사항

  • n은 500,000,000이하의 자연수 입니다.

입출력 예

n              result

1 1
2 2
3 4
4 11

 

 

 

프로그래머스 LEVEL 2 문제 중에 10진수, 2진수 등

N진수에 관한 문제이다.

문제는 1,2,4 만으로 존재하는 3진수라고 생각하면 된다.

 

 

문제는 푸는 핵심은,

3으로 나눠서 0이 되는 부분에서는 몫의 -1을 취해주는 것이다.

 

정답 코드

def solution(n):
    answer = ''
    
    arr = [4,1,2]
    
    arr_str = ""
    i = 1
    
    while n:
        arr_str = str(arr[n%3]) + arr_str
        n = n//3 - (n%3 == 0)
           
    
        
    return arr_str

 

 

코딩테스트 대비 Python 강의

www.youtube.com/channel/UCYYao-BSPaetw7N2GFFJ-Yw?view_as=subscriber

 

Henry Joo

 

www.youtube.com

 

반응형

+ Recent posts