poj 1384 Piggy-Bank
2011-07-20 22:44
288 查看
#include <iostream> //dp using namespace std; #define MAX 999999 int dp[10000],weight[510],value[510]; int main() { int t,e,f,n; int i,j,total,min_w; scanf("%d",&t); while (t--) { scanf("%d%d%d",&e,&f,&n); total=f-e; min_w=MAX; for(i=0;i<n;i++) { scanf("%d%d",&value[i],&weight[i]); if(min_w>weight[i]) min_w=weight[i]; } for(i=1;i<=total;i++) dp[i]=MAX; dp[0]=0; for (i=min_w;i<=total;i++) //从1开始也可以AC { for(j=0;j<n;j++) if(weight[j]<=i && dp[i]>dp[i-weight[j]]+value[j]) //dp[a]=b,表示重量为a,花费最小为b { dp[i]=dp[i-weight[j]]+value[j]; } } if(dp[total]==MAX) printf("This is impossible.\n"); else printf("The minimum amount of money in the piggy-bank is %d.\n", dp[total]); } return 0; }
相关文章推荐
- poj 1384 Piggy-Bank (完全背包)
- Poj 1384 & Hdu 1114 Piggy-Bank (完全背包)
- poj 1384 Piggy-Bank(完全背包)
- POJ 1384 Piggy-Bank 完全背包
- POJ 1384 Piggy-Bank
- poj 1384 Piggy-Bank 多重背包问题
- poj 1384 && hdu 1114 Piggy-Bank (完全背包)
- POJ 1384 Piggy-Bank (完全背包)
- poj 1384 Piggy-Bank 多重背包问题
- 完全背包练习-POJ-1384-Piggy-Bank
- poj 1384 Piggy-Bank
- HDU1114:Piggy-Bank [POJ1384]
- POJ 1384 Piggy-Bank 背包DP
- HDU 1114 || POJ 1384 Piggy-Bank
- POJ 1384 Piggy-Bank(完全背包)
- POJ 1384 && HDU 1114 Piggy-Bank(完全背包问题)
- POJ 1384 Piggy-Bank 完全背包
- POJ 1384 Piggy-Bank (ZOJ 2014 Piggy-Bank) 完全背包
- poj 1384 Piggy-Bank(全然背包)
- poj 1384 piggy-bank