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

SOO·2023년 5월 25일
0

CodingTest

목록 보기
5/11
post-custom-banner

문제 설명

나의 풀이

def solution(n):
    answer = 0
    li = []
    
    while n > 0:
        li.append(n%3)
        n //= 3
        
    li.reverse()
    
    for idx, num in enumerate(li):
        answer += 3**idx * num
    
    return answer

12진법, 8진법과 달리 3진법은 내장된 함수가 없어서 직접 나눗셈을 해서 3진법 수로 만들어야 했다.
3진법을 뒤집는 것은 reverse()로 간단하게 할 수 있었다.
3진법을 다시 10진법 수로 만드는것은 우리가 계산하는 방법을 생각하면 간단하게 코드로 만들 수 있었다.

다른 사람의 풀이

int('숫자(혹은 16진법의 문자와 같은 문자)로 이루어진 문자열',해당 진법) -> 10진법의 수로 변환

이 코드를 사용해서 간단하게 풀은 사람들이 있었다.
int()함수에 이런 기능이 있다는걸 오늘 알았다.....
이제라도 알았으니 공부하자!

profile
데이터 분석으로 세상을 읽어보쟈 빠샤
post-custom-banner

0개의 댓글