알고리즘(백준, 프로그래머스)/[프로그래머스] Lv1

[프로그래머스] Lv1. 월간 코드 챌린지 / 3진법 뒤집기 - 파이썬(Python)

마법사 코딩공주 2023. 5. 30. 15:01
728x90
반응형

문제링크 : https://school.programmers.co.kr/learn/courses/30/lessons/68935

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

📝 문제설명

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

🔗 제한 사항

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

🔗입출력예


👉 문제풀이

  • divmod() 함수를 통해 몫과 나머지를 리턴한다. 리턴 값이 2개이므로 튜플을 사용
  • int(x, vase) :   base 진법으로 구성된 str형식의 수를 10진법으로 변환해줌
def solution(n):
    answer = ''
    
    while n > 0:
        n, rest = divmod(n, 3)
        answer += str(rest)
        
    return int(answer, 3)
def solution(n):
    tmp = ''
    while n:
        tmp += str(n % 3)
        n = n // 3

    answer = int(tmp, 3)
    return answer
728x90
반응형