Skip to content

Instantly share code, notes, and snippets.

@DongguemYoo
Last active June 4, 2020 05:20
Show Gist options
  • Save DongguemYoo/b9c32e6cc1de9b970cc0f2d871597f32 to your computer and use it in GitHub Desktop.
Save DongguemYoo/b9c32e6cc1de9b970cc0f2d871597f32 to your computer and use it in GitHub Desktop.
[코딩테스트] 124나라의 숫자.py (python)
//정답을 더하는 부분에서...answer+=결과값 으로 가니까 거꾸로 더해져서 문제가 있었음
//answer = 결과 +answer를 하면 원하는 순서로 더할수있음..ㅋㅋ..머리가 안돌아간다...
def solution(n):
answer = ''
x =[]
rest=0
ttt =[4,1,2]
while n != 0:
rest = int(n) % 3
n = int(n / 3)
if(rest ==0):
n -=1;
answer = str(ttt[rest]) + answer
# x.append(str(ttt[rest]))
#
# x.reverse()
# for ss in x:
# answer+=ss
return answer
///다른 사람의 풀이 ( 내풀이 업그레이드버전)
// 미쳣넹;; 똑똑한클라스보소
def change124(n):
num = ['1','2','4']
answer = ""
while n > 0:
n -= 1 //if문을 없애기위해 미리 -1을함
answer = num[n % 3] + answer
n //= 3
return answer
//다른사람 풀이 2 재귀함수를 이용한 풀이! 개인적으로 이게 더 멋있어보임
def change124(n):
if n<=3:
return '124'[n-1]
else:
q, r = divmod(n-1, 3) //divmod라는 함수는 뭔지 모름
return change124(q) + '124'[r]
# 아래는 테스트로 출력해 보기 위한 코드입니다.
print(change124(10))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment