본문 바로가기

알고리즘/프로그래머스

2018 KAKAO BLIND RECRUITMENT - n진수 게임, 파이썬

문제


프로그래머스 n진수 게임

요구 능력


  • 레벨 2
  • 진수 변환에 대한 구현

풀이


  • 그다지 어렵진 않았다고 하기엔 다른 풀이들이 너무 간단했다.
  • 더 최적화가 가능할 것도 같다.
  • 프로그래머스 문제는 2단계는 건너 뛰고 5단계는 제끼고(..) 3, 4 단계 문제만 풀도록 해야겠다.
  • 코드는 읽어보면 어렵지 않게 이해할 수 있기 때문에 코드 설명은 생략

코드(파이썬)


def change_base(n, base) :
    s = "0123456789ABCDEF"
    ans = ''
    while n // base > 0 :
        ans = s[n % base] + ans
        n = n // base
    ans = s[n % base] + ans
    return ans

def solution(n, t, m, p):
    answer = ''
    s = ''
    num = 0
    while len(s) <= m*t :
        s += change_base(num, n)
        num += 1
    for i, c in enumerate(s) :
        if i % m == p - 1 and len(answer) < t:
            answer += c 
    return answer
    ```