-문제: https://www.acmicpc.net/problem/2294
-정답풀이:
n,k=map(int,input().split())
c=[]
dp=[0 for i in range(k+1)]
for i in range(n):
c.append(int(input()))
for i in range(1,k+1):
a=[]
for j in c:
if j <=i and dp[i-j]!=-1:
a.append(dp[i-j])
if not a:
dp[i]=-1
else:
dp[i]=min(a)+1
print(dp[k])
'백준 > DP' 카테고리의 다른 글
[코딩테스트] 백준 2565번: 전깃줄 (0) | 2021.12.28 |
---|---|
[코딩테스트] #19. 백준 2225번: 합분해 (0) | 2021.12.26 |
[코딩테스트] #17. 백준 1520번: 내리막길 (0) | 2021.12.25 |
[코딩테스트] #15. 백준 2133번: 타일채우기 (0) | 2021.12.24 |
[코딩테스트] #14. 백준 11051번: 이항계수2 (0) | 2021.12.24 |