[백준] 1740번 거듭제곱

거북이·2023년 3월 7일
0

백준[실버4]

목록 보기
74/91
post-thumbnail

💡문제접근

  • 처음엔 규칙을 찾지 못해서 어떻게 접근해야할지 고민을 많이 했다. N을 2진수로 변환한 다음 변환한 2진수를 3의 거듭제곱 형식으로 곱해주면 된다.

💡코드(메모리 : 31256KB, 시간 : 40ms)

import sys
input = sys.stdin.readline

s = []
N = int(input())
while N > 0:
    s.append(N % 2)
    N //= 2

num = ''.join(map(str, s))
Sum = 0
for i in range(len(str(num))):
    if num[i] == "1":
        Sum += 3**i
print(Sum)

💡소요시간 : 21m

0개의 댓글