반응형
https://www.acmicpc.net/problem/1463
1463번: 1로 만들기
첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다.
www.acmicpc.net
import sys
n = int(sys.stdin.readline())
dp = [0 for _ in range(n+1)]
for i in range(2, n+1):
dp[i] = dp[i-1] + 1
if i%2 == 0 and dp[i] > dp[i//2] + 1 :
dp[i] = dp[i//2]+1
if i%3 == 0 and dp[i] > dp[i//3] + 1 :
dp[i] = dp[i//3] + 1
print(dp[n])
반응형
'알고리즘 > 백준온라인저지 (Python)' 카테고리의 다른 글
[백준온라인저지] 11057 - 오르막 수 (0) | 2021.08.24 |
---|---|
[백준온라인저지] 11727 - 2xn 타일링 2 (0) | 2021.08.24 |
[백준온라인저지] 2747 - 피보나치 수 (0) | 2021.08.24 |
[백준온라인저지] 8979 - 올림픽 (0) | 2021.08.24 |
[백준온라인저지] 2816 - 디지털 티비 (0) | 2021.08.24 |
댓글