Level 1. 3진법 뒤집기

02. 3진법 뒤집기

코딩테스트 연습 > 월간 코드 챌린지 시즌1 > 3진법 뒤집기
https://programmers.co.kr/learn/courses/30/lessons/68935

문제 설명

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

제한 조건

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

입출력 예

n = 45 result = 7

구상

  1. divmod를 이용하여 3진수 형태를 만들면서 1의 자리부터 문자열 형태로 stack한 뒤,

  2. int(a,3)을 이용하여 10진수 형태로 변환한다.

풀이 방법

def solution(n):
    answer = ""

    while n > 0:			
        n, re=divmod(n,3)
        answer+=str(re)
         
    return int(answer, 3)

좋은 웹페이지 즐겨찾기