코딩테스트 연습 - [3차] n진수 게임 | 프로그래머스 (programmers.co.kr)
문제는 위 링크에서 확인하는것이 더욱 나을것같다.
일단 문제를 푸는데있어서 3가지 주요 부위로 나눴다.
첫번째는 divmod를 활용하여, N진수 String을 만들어주는 부분
두번째는 튜브가 말해야하는 길이보다 좀 더 길게, 그 순서까지 텍스트를 뽑으며 추가해주는 부분
세번째는 , 순서에 맞게 튜브가 말할 answer를 만드는 부분
# n진수 게임 (카카오 2018블라인드)
def solution(n,t,m,p):
def getdiv(n, div):
words = "0123456789ABCDEF"
ans=""
tmp=[]
while n>=div:
tmp.append(divmod(n,div)[1])
n=divmod(n,div)[0]
tmp.append(divmod(n,div)[1])
while tmp:
ans+=words[tmp.pop()]
return ans
start=0
tmp = ''
while len(tmp)< (t)*(m+1) :
tmp += getdiv(start,n)
start+=1
answer = ""
idx = p-1
while len(answer) < t :
answer+=tmp[idx]
idx += m
return answer
# n,t,m,p = 2,4,2,1
# n,t,m,p = 16,16,2,1
n,t,m,p = 16,16,2,2
solution(n,t,m,p) # n진법, 미리구할 수 t, 게임인원 m , 튜브의 순서 p
'CODING TEST > Programmers' 카테고리의 다른 글
파이썬 Python KAKAO_2018 프렌즈 4블록 (0) | 2021.06.15 |
---|---|
프로그래머스 카카오블라인드 1차 뉴스클러스터링 (python) (0) | 2021.06.13 |
프로그래머스 다단계칫솔판매 (Python) (0) | 2021.06.13 |
2019 KAKAO BLIND RECRUITMENT 매칭 점수 (0) | 2021.05.29 |
보석 쇼핑 (0) | 2021.05.28 |