코딩테스트

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

pyflu 2023. 9. 1. 05:22

[프로그래머스] 3진법 뒤집기 Lv.1 - [파이썬/python]

 

https://school.programmers.co.kr/learn/courses/30/lessons/68935

 

프로그래머스

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

programmers.co.kr


 

 

문제 설명

 

 

자연수 n을 3진법으로 변환 후 앞뒤로 뒤집고, 이를 다시 10진법으로 표현한 수를 반환(return)하는 문제입니다.

 

 

※ 제한사항

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

 

 

더보기
  • 자연수 n의 3진법으로 변환하는 코드로 짜서 나머지를 구할시 자동으로 끝 부분부터 구해지기에 뒤집지 않아도 됩니다.


  • 구한 3진법 수를 파이썬의 int()함수를 사용하여 3진법 문자열을 10진법으로 변환하면 됩니다. 

 

 

 




정답 주의!!!




 


def solution(n):
   
    result = ''  # 결과를 저장할 빈 문자열을 생성합니다.

    while n > 0:
       
        # n을 3으로 나눈 나머지를 문자열로 변환하여 result에 추가합니다.
        # 나머지가 끝부분부터 추가되기 때문에 뒤집지 않아도 됩니다.
        result += str(n % 3)
       
        # n을 3으로 나눈 몫으로 업데이트합니다.
        n = n // 3

    # 3진법 문자열을 10진법으로 변환하여 반환합니다.
    return int(result, 3)

728x90