반응형
-풀이
def solution(n):
answer = 0
rev_base = ''
while n > 0:
n, mod = divmod(n, 3)
rev_base += str(mod)
a = rev_base[::-1]
a = list(a)
a.reverse()
a = ''.join(a)
a= int(a, 3)
return a
# def solution(n):
# tmp = ''
# while n:
# tmp += str(n % 3)
# n = n // 3
# answer = int(tmp, 3)
# return answer
-풀이 설명
3진법을 어떤식으로 나타내야 할 줄 몰라서 구글링을 해서 n의 3진법을 구했다. 그런 다음 조건에 맞춰서 10진법으로 다시 표현을 했다. 10진법으로 다시 바꾸는 방법 중에 int()함수를 이용해서 바꿀 수 있다는 것을 알게 되었다. 풀고 난 뒤 다른 사람의 풀이를 보고 3진법을 훨씬 더 간단하게 구하는 방법을 알게 되어 주석처리로 나타내었다.
'알고리즘' 카테고리의 다른 글
[프로그래머스][level 1]폰켓몬 (0) | 2021.10.09 |
---|---|
[프로그래머스][level 1]실패율(2019 카카오 기출) (0) | 2021.10.09 |
[프로그래머스][level 1]예산 (0) | 2021.10.08 |
[프로그래머스][level 1]두 개 뽑아서 더하기 (0) | 2021.10.08 |
[프로그래머스][level 1]2016년(날짜 함수) (0) | 2021.10.08 |