본문 바로가기

알고리즘

프로그래머스 - n진수 게임

반응형

문제 설명

 

알고리즘 고민

 

자신의 차례가 왔을 때 말해야할 숫자를 미리 저장해야한다.
단순하게 미리 구할 숫자의 갯수에 참가하는 인원 수를 곱한 만큼의 숫자들을 구해놓으면 튜브의 순서에 맞는 인덱스만 뽑아내서 출력하면 된다.
여기서 내가 고민했던 부분은 진법 변환이었다... 
진법 변환 하는 알고리즘을 직접 만들어야 하는데 이부분에서 헤멨다.

 

다른 분들의 코드를 참고해보니 파이썬 내장 함수인 divmod(n, base)를 사용하여 n을 base로 나눈 몫을 q에, 나머지를 r에 저장하여 재귀함수로 구현하였다. 이 알고리즘을 사용해서 나머지 부분을 구현하였다.

 

배운 점

 

a, b = divmod(n, base) : a는 n을 base로 나눈 몫, b는 n을 base로 나눈 나머지 

반응형