티스토리 뷰

1. 문제

programmers.co.kr/learn/courses/30/lessons/12899

 

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

124 나라가 있습니다. 124 나라에서는 10진법이 아닌 다음과 같은 자신들만의 규칙으로 수를 표현합니다. 124 나라에는 자연수만 존재합니다. 124 나라에는 모든 수를 표현할 때 1, 2, 4만 사용합니다.

programmers.co.kr

2. 소스코드 (사용언어: Python3)

def change124(n):
    if n<=3:
        return '124'[n-1]
    else:
        q, r = divmod(n-1, 3) 
        return change124(q) + '124'[r]

 

3. 고찰

1) 재귀함수 이용

- 각 자리수에 대한 계산이 반복적이므로 재귀함수를 이용했다.

 

2) 나머지의 값이 0,1,2인 것과 자리수의 값이 1,2,4인 것을 이용하여

'124'문자열에서 [0]자리, [1]자리, [2]자리에 해당하는 문자를 가져오도록 하였다.

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함