일기 대신 코드 슬쩍

[프로그래머스]Lv1. 3진법 뒤집기 본문

코딩테스트/프로그래머스(Python)

[프로그래머스]Lv1. 3진법 뒤집기

코코자 2023. 1. 27. 13:32

문제 설명

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

제한사항

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

입출력 예

n result
45 7
125 229

풀이

def solution(n):
    answer = 0
    result = ''
    while n > 0:
        answer = str(n % 3)
        n //= 3
        result += answer
    return int(result,3)
  • while문을 이용하여 수를 3진법으로 변환
  • 이때 앞뒤로 뒤집은 값으로 도출
  • int(x,y)함수를 써서 진수 변환해줌
  • 점수는 +3
☝🏻
• int(n, y) : 'y' 진법으로 표현된 'n'을 10진법으로 변환해준다.