자료구조&알고리즘/Kotlin 활용
프로그래머스 - 3진법 뒤집기 (level 1)
김검정
2024. 9. 9. 14:24
https://school.programmers.co.kr/learn/courses/30/lessons/68935
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
여기서의 핵심은 3진법으로 바꾼배열 nums 를 뒤집어야 3진순로 변환된 문자열이 된다는 것이다.
def radixChange(num, radix):
if num == 0: return '0'
nums = []
while num:
num, digit = divmod(num, radix) # num에는 몫이, digit에는 나머지가 담기게 된다
nums.append(str(digit))
return ''.join(reversed(nums)) // 예를들어 45를 3진법으로 나타냈으면 nums에는 0021이 담기게된다.
def solution(n):
return int(radixChange(n, 3)[::-1], 3)