프로그래머스(Python)/Level2

[프로그래머스] '3진법 뒤집기' 알고리즘 풀이 - Python

Jinomad 2020. 10. 13. 13:44

Contents

  1. 문제 설명

    [제한사항]

    [입출력 예]
  2. 알고리즘 분석 

    [나의 풀이]

 

문제 설명

자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요.

 

 

 

제한사항

  • n은 1 이상 100,000,000 이하인 자연수입니다.

 

 

입출력 예

n result
45 7
125 229



알고리즘 분석

 

  • 나의 풀이
def trans(n):
    ten, three = 0, ''
    while n != 0:
        three += str(n%3)
        n = n // 3
    for idx, t in enumerate(three[::-1]):
        ten += ((3 ** idx) * int(t))
    return ten

def solution(n):
    return trans(n)