[ 프로그래머스 / PYTHON ] n 진수 게임

yujeongkwon·2022년 5월 5일
0

프로그래머스 / PYTHON

목록 보기
25/77

문제 설명

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]
profile
인생 살자.

0개의 댓글