POJ1384 完全背包问题
2014-11-17 15:14
239 查看
简单题,给定一些种类的硬币以及他们各自的重量和价值,求一定总重量的硬币的最小价值,并且要判断背包装不满的情况。
#include <stdio.h> #include <iostream> using namespace std; #define inf 0x3f3f3f3f int f[5000000]; int min (int a, int b) { return a>b ? b : a; } void CompletePack (int *f, int c, int w, int v) { for(int i = c; i <= v; i++) f[i] = min (f[i], f[i-c] + w); } int main () { int T; scanf ("%d", &T); while(T--) { int E,F,N,V; int C[505],W[505]; // C -> Cost , W -> Wealth int i,j,k; scanf ("%d%d", &E, &F); V = F - E; scanf ("%d", &N); for(i = 0; i < N; i++) scanf ("%d%d", &W[i], &C[i]); for(i = 1; i <= V; i++) f[i] = inf; f[0] = 0; for(j = 0; j < N; j++) CompletePack(f, C[j], W[j], V); if(f[V] >= inf) printf ("This is impossible.\n"); else printf ("The minimum amount of money in the piggy-bank is %d.\n", f[V]); } return 0; }
相关文章推荐
- 完全背包问题 POJ1384
- 背包问题总结第三讲——完全背包问题
- P02: 完全背包问题(转)
- ACM HDU 1114 Piggy-Bank (完全背包问题)
- 背包问题——“完全背包”详解及实现(包含背包具体物品的求解)
- P02: 完全背包问题
- 完全背包问题
- 0-1背包问题与完全背包问题C++实现 动态规划
- 背包问题总结(0-1背包+完全背包+多重背包)
- hdu 1284 钱币兑换问题 完全背包
- 完全背包问题、、、
- 背包问题教程-01背包,完全背包,多重背包,混合背包
- 背包问题总结(0-1背包+完全背包+多重背包)
- 完全背包问题
- USACO Score Inflation,完全背包问题
- 完全背包问题
- 完全背包问题
- tyvj 1214 硬币问题 完全背包 恰好 最大/最少
- 背包问题系列之完全背包
- 背包问题——“01背包”及“完全背包”装满背包的方案总数分析及实现