Solution
def solution(n, t, m, p):
# 숫자를 하나씩 차례대로 말하는 게임
# 자신이 말해야 하는 숫자를 스마트폰에 미리 출력해주는 프로그램
# 숫자 전체를 출력하는 게 아니라, 튜브의 차례만 생각하면 되는 문제
answer = ''
convert_num = ''
current = p - 1
for num in range(t * m):
convert_num += convert2n(num, n)
while True:
if len(answer) == t:
break
answer += convert_num[current]
current += m
return answer
def convert2n(num, n):
if num == 0:
return '0'
numbers = '0123456789ABCDEF'
tmp = ''
while num > 0:
# 몫: num, 나머지: mod -> 튜플로 변환
num, mod = divmod(num, n)
tmp += numbers[mod]
return tmp[::-1]
print(solution(2, 4, 2, 1))
print(solution(16, 16, 2, 1))
print(solution(16, 16, 2, 2))
Leave a comment