코딩테스트 n진수 게임 문제풀이

프로그래머스 n진수 게임(level 2) 문제풀이

def solution(n, t, m, p):
    base = "0123456789ABCDEF"
    data = "0"
    k=1
    while len(data)<t*m:
        result =""
        i = k
        while i != 0:
            result += base[i%n]
            i = i//n
        result = result[::-1] 
        data += result
        k += 1
    print(data)
    answer = ""
    for i in range(t):
        answer += data[i*m+(p-1)]
    return answer

일단 내가 미리 구할 숫자(t)와 참여 인원(m)을 알면 tm이 문제에서 사용할 연속된 n진수 길이이므로 while len(data)<tm으로 한다

그 while문 안에서 몫과 나머지를 이용해서 n진수를 구해 data에 문자열로 더하고 내가 말해야할 문자를 골라서 answer에 넣는다

좋은 웹페이지 즐겨찾기