Lv2 프로그래머스(Programmers)[Python][파이썬] n진수 게임

"""
출처:프로그래머스,
https://school.programmers.co.kr/learn/courses/30/lessons/17687
"""

# 풀이과정

def solution(n, t, m, p):
from collections import deque
check = m * t
all_num = deque([0])
count = 1

while True:
start = count
num = deque([])

while True:
start, j = divmod(start, n) # i 몫 j 나머지

if start == 0:
if j != 0:
if j == 10:
num.appendleft("A")
elif j == 11:
num.appendleft("B")
elif j == 12:
num.appendleft("C")
elif j == 13:
num.appendleft("D")
elif j == 14:
num.appendleft("E")
elif j == 15:
num.appendleft("F")
else:
num.appendleft(j)
break
else:
if j == 10:
num.appendleft("A")
elif j == 11:
num.appendleft("B")
elif j == 12:
num.appendleft("C")
elif j == 13:
num.appendleft("D")
elif j == 14:
num.appendleft("E")
elif j == 15:
num.appendleft("F")
else:
num.appendleft(j)
all_num += num
if len(all_num) >= check:
break

count += 1

all_num = "".join(list(map(str, list(all_num)[p - 1::m][0:t])))

return all_num