전체 코드
4장/3진법_뒤집기.py
def radixChange(num, radix):
if num == 0: return '0'
nums = []
while num:
num, digit = divmod(num, radix)
nums.append(str(digit))
return ''.join(reversed(nums))
def solution(n):
return int(radixChange(n, 3)[::-1], 3)
입력받은 숫자를 3진수로 변환한 다음, 변환된 문자열을 역으로 뒤집고, 다시 10진수로 변환하면 됩니다. 10진수에서 n진수로 변환할 때 진법 변환 코드가 필요하지만, 반대로 n진수에서 10진수로 변환할 때는 매우 쉽습니다. 그저 int(<진법이 있는 문자열>, <n진법>)으로 쓰기만 하면 알아서 10진수로 변환해줍니다. 이런 기능들은 잘 외워두세요.