문제
프로그래머스 - 124 나라의 숫자
해결 과정
- 적어보니까 규칙 발견

 
- 우선 
country = ["4","1","2"]
- 3으로 나누었을 때 나머지가 0이면 4
 
- 3으로 나누었을 때 나머지가 1이면 1
 
- 3으로 나누었을 때 나머지가 2이면 2
 
 
while n: n이 0이 될 때까지 반복문을 돈다.
answer는 n을 3으로 나눈 나머지일 때의 해당 숫자와 여태 구한 answer를 붙여준다. 
- n이 3으로 나눴을 때 0이라면 (그림에 빨간 형광펜) n은 n-1해준 값에 3을 나눈 몫이고
 
- 0이 아니라면 n은 n을 3으로 나눈 몫
 
- 이 과정을 반복하면 answer 뒤에 계속 나머지에 따른 숫자가 붙는다.
 
 
시행착오
- 조합으로 풀었는데 런타임 에러가 났다.  아무래도 이렇게 푸는게 아닌갑다..
 
def combination(arr,n):
    result = []
    if n == 0:
        return [[]]
    for i in range(len(arr)):
        front = arr[i]
        for back in combination(arr[i:],n-1):
            result.append([front] + back)
    return result
def solution(n):
    array = []
    country = ['1','2','4']
    for i in range(1,4):
        for j in combination(country,i):
            array.append(j)
    return ''.join(array[n-1])
풀이
def solution(n):
    answer = ''
    country = ["4","1","2"]
    while n:
        answer = country[n % 3] + answer
        if n % 3 == 0:
            n = (n-1) //3
        else:
            n = n // 3
    return answer