다이나믹 프로그래밍
방법 바로 생각하기 은근 까다롭다.
def dynamic_prog(num, dp):
for i in range(2, num+1):
dp[i] = dp[i-1] + 1
if i % 3 == 0:
dp[i] = min(dp[i], dp[i//3] + 1)
if i % 2 == 0:
dp[i] = min(dp[i], dp[i//2] + 1)
print(dp[num])
N = int(input())
dp = [0] * (N+1)
dynamic_prog(N, dp)'알고리즘 문제풀이 > Baekjoon Algorithm' 카테고리의 다른 글
| 백준 2529 부등호 (Python) (0) | 2022.02.18 |
|---|---|
| 백준 1012 유기농 배추 (Python) (0) | 2021.08.11 |