n진수게임
숫자를 0부터 시작해서 차례대로 말한다. 첫 번째 사람은 0, 두 번째 사람은 1, … 열 번째 사람은 9를 말한다.
10 이상의 숫자부터는 한 자리씩 끊어서 말한다. 즉 열한 번째 사람은 10의 첫 자리인 1, 열두 번째 사람은 둘째 자리인 0을 말한다.
이렇게 게임을 진행할 경우,
자신이 말해야 하는 숫자를 스마트폰에 미리 출력해주는 프로그램을 만들려고 한다. 튜브의 프로그램을 구현하라.
진수 변환 코드 확실히 알고가기!!
def n_convert(num,n):
t = '0123456789ABCDEF'
temp = ''
while num > 0:
q,r = divmod(num,n)
temp += t[r]
num = q
return temp[::-1]
def solution(n, t, m, p):
answer = '0'
num = 0
result = ''
while len(answer) < m*t:
num += 1
answer += n_convert(num,n)
result = answer[p-1::m]
return result[:t]
def n_convert(num,n):
t = '0123456789ABCDEF'
q,r = divmod(num,n)
return n_convert(q,n) + t[r] if q else t[r]
def solution(n, t, m, p):
answer = '0'
num = 0
result = ''
while len(answer) < m*t:
num += 1
answer += n_convert(num,n)
result = answer[p-1::m]
return result[:t]