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

shin·2022년 11월 23일
0

CodingTest 문제 풀이

목록 보기
68/79

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

  • 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요.
def solution(n):
    base = ''
    while n > 0:
        n, mode = divmod(n, 3)
        base += str(mode)
    return int(base, 3)
  • divmod를 이용해서 n을 3으로 나누고 난 후 나머지를 base에 하나씩 추가함
  • 문제에서 3진법의 앞뒤를 뒤집으라고 했지만, 저렇게 나머지를 차례대로 붙이면 뒤집힌 결과가 나오기 때문에 뒤집는 과정은 필요 없음
  • int에 뒤집힌 3진법과 3진법을 나타내는 3을 인자로 넣어주면 3진법을 10진법으로 변환해줌
profile
Backend development

0개의 댓글