티스토리 뷰
728x90
반응형
문제
https://programmers.co.kr/learn/courses/30/lessons/68935?language=python3
코드
def solution(n):
answer = ''
while n > 0:
n,r = divmod(n,3)
answer += str(r)
return int(answer, 3)
파이썬에 2,8,10,16 진수는 쉽게 변환할 수 있도록 내장함수가 있지만 3진수는 따로없기 때문에 직접 만들어야 한다.
10진수를 n진수로 바꾸는 방법은
바꾸고자 하는 10진수를 n으로 몫이 0이 될 때 까지 나눠주고, 나머지를 아래방향 부터 읽어주면 된다.
그래서 맨 처음 나온 나머지를 answer에 넣어주고 계속 while문을 돌면서 넣어주게 되면 뒤집은 효과를 얻게된다.
마지막으로 int(value, base)를 사용해 10진수로 바꿔주면 된다.
반응형
'알고리즘 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] Level3, 네트워크 (Python) (0) | 2021.07.14 |
---|---|
[프로그래머스] Level2, 방문길이(Python) (0) | 2021.06.28 |
[프로그래머스] Level1, 약수의 개수와 덧셈 (Python) (0) | 2021.06.25 |
[프로그래머스] Level1, 음양 더하기 (Python) (0) | 2021.06.25 |
[프로그래머스] Level1, 내적 (Python) (0) | 2021.06.24 |
댓글