728x90
🔗 문제링크
📂 분류
구현
💡 풀이
n진법을 구하는 공식만 알고 있다면 금방 해결할 수 있는 문제이다.
접근방식
- 2진수부터 16진수까지의 값을 구해야 하기 때문에 num이 n보다 작을 때까지 몫과 나머지를 구한다.
- 0 ~ t * m까지의 n 진수의 값을 스트링으로 저장한다.
- 튜브의 차례의 요소를 answer에 저장하고 t개가 채워진다면 반복문을 종료한다.
💻 코드
def convert(num, base):
code = "0123456789ABCDEF"
ret = ''
while True:
if num < base:
ret += str(code[num])
break
num, mod = divmod(num, base)
ret += code[mod]
return ret[::-1]
def solution(n, t, m, p):
answer = ''
game = ''
for i in range(m * t):
game += convert(i, n)
while not len(answer) == t:
answer += game[p - 1]
p += m
return answer
728x90
'Algorithm > 프로그래머스' 카테고리의 다른 글
[Python] 프로그래머스 Lv2 - 땅따먹기 (0) | 2022.06.18 |
---|---|
[Python] 프로그래머스 Lv2 - 다음 큰 숫자 (0) | 2022.06.16 |
[Python] 프로그래머스 Lv2 - 올바른 괄호 (0) | 2022.06.14 |
[Python] 프로그래머스 Lv2 - [3차] 파일명 정렬 (2018 KAKAO BLIND RECRUITMENT) (0) | 2022.06.14 |
[Python] 프로그래머스 Lv2 - 양궁대회 (2022 KAKAO BLIND RECRUITMENT) (0) | 2022.06.10 |