문제
접근
10진수가 넘어가는 경우 진수 변환 과정에서 나머지가 10이 넘어갈 수 있다.
이 경우에 아스키코드를 이용하여 변환 과정을 따로 처리해줘야 한다.
코드
- 파이썬 코드
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
def solution(n, t, m, p):
answer = ''
cnt = 0
num = 0
turn = 0
p-= 1
while cnt < t:
transform = ''
tmp = num
if tmp == 0:
transform = '0'
while tmp != 0:
div = tmp % n
if div >= 10:
div = ord('A') + div - 10
transform = chr(div) + transform
else:
transform = str(tmp%n) + transform
tmp //= n
for item in transform:
if turn == p:
answer+=item
cnt += 1
if cnt >= t:
break
turn = (turn+1)%m
num += 1
return answer