전체 코드

    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진수로 변환해줍니다. 이런 기능들은 잘 외워두세요.

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.