Written by
최태열
on
on
[Python][프로그래머스][Level2] 124 나라의 숫자
[Python][프로그래머스][Level2] 124 나라의 숫자
코드
def solution(n):
answer = ''
while n>3:
n, last= divmod(n,3)
if last==0:
n-=1
last=4
answer=str(last)+answer
return str(n)+answer if n!=3 else str(4)+answer
특수한 경우를 가진 3진수를 구하는 문제이다.
일반적인 3진수는 0이 맨 앞에 오면 안되기 때문에 3으로 계속해서 나눠주고 나머지를 넣는 방식으로 구할 수 있지만
이 문제는 1,2,4 모두 앞에 올 수 있기 때문에 다른 방식으로 푼다.
나머지가 0인 경우엔 4가 앞에 올 수 있기때문에 1을 빼주고 붙혀준다.
Discussion and feedback