728x90
SMALL
DP 문제
https://www.acmicpc.net/problem/2294
💡 풀이 코드
import sys
n, k = map(int, sys.stdin.readline().split())
coin = []
for _ in range(n):
value = int(sys.stdin.readline())
coin.append(value)
dp = [10001] * (k + 1)
dp[0] = 0
def coin2(n, coin, k):
for i in range(1, k + 1):
for j in range(n):
if i < coin[j] : continue
dp[i] = min(dp[i], dp[i - coin[j]] + 1)
coin2(n, coin, k)
print(dp[k] if dp[k] != 10001 else -1)
728x90
LIST
'Algorithm > DP' 카테고리의 다른 글
[백준] 2011번 : 암호코드 (파이썬) (0) | 2024.07.21 |
---|---|
[백준] 9084번 : 동전 (파이썬) (1) | 2024.02.18 |
[백준] 11054번 : 가장 긴 바이토닉 부분 수열 (파이썬) (2) | 2024.01.22 |
[백준] 2565번 : 전깃줄 (파이썬) (0) | 2024.01.20 |
[백준] 9465번 : 스티커 (파이썬) (1) | 2024.01.06 |