摘要: 4 61 42 63 122 7// poj 3624 标准的01背包 优化的一位数组#include #include using namespace std;int w[3500],v[3500],dp[13000];int main (){ int n,m,i,j; scanf("%d%d",... 阅读全文
posted @ 2014-08-18 18:51 2014acm 阅读(309) 评论(0) 推荐(0) 编辑
摘要: 物品 1 2 3 4 5 6价值 1 2 3 4 5 6个数4 7459 101234567891011121314151617181920212223242526272810000000000000000000000000000dp[0] = 1;物品种类 i= 10123456789101112... 阅读全文
posted @ 2014-08-18 11:23 2014acm 阅读(174) 评论(0) 推荐(0) 编辑
摘要: #include #include int dp[60001];void f(int maxv,int n,int c[ ],int v[ ])//最大可能价值、 物品种类、物品数量、物品价值 { int i,j,k,t; memset(dp,0,sizeof(dp)); dp[0] = 1; fo... 阅读全文
posted @ 2014-08-18 11:09 2014acm 阅读(148) 评论(0) 推荐(0) 编辑
摘要: #include #include int dp[60001];void f(int maxv,int n,int c[ ],int v[ ]) //最大可能价值、 物品种类、物品数量、物品价值 { int i,j,k,t; memset(dp,0,sizeof(dp)); dp[0] = 1; f... 阅读全文
posted @ 2014-08-18 10:56 2014acm 阅读(163) 评论(0) 推荐(0) 编辑
摘要: #include using namespace std;int cash, n, m[13], d[13];int f[100100];int money, i, v, temp, k;int solve() { memset(f, 0, sizeof(f)); ... 阅读全文
posted @ 2014-08-18 10:20 2014acm 阅读(227) 评论(0) 推荐(0) 编辑
摘要: // 多重背包 DP/* 题目大意是:给定N种面值分别为d[i]的钞票,数量分别为n[i]张.再给一个整数cash.求,用这些钞票能表示出的不大于cash的最大值是多少.数据范围N#include const int MAXN = 100001;const int MAXM = 110;int n,... 阅读全文
posted @ 2014-08-18 10:13 2014acm 阅读(217) 评论(0) 推荐(0) 编辑
摘要: #include #include using namespace std;int dp[1005], w,v,T,M;int max(int x,int y){ return x>y?x:y; }void f( ){ int i,j; for (i=1; i>w>>v; //直接读进去 for (... 阅读全文
posted @ 2014-08-18 09:57 2014acm 阅读(189) 评论(0) 推荐(0) 编辑
摘要: #include #include using namespace std;int dp[1005], w[105],v[105],T,M;int max(int x,int y){ return x>y?x:y; }void f( ){ int i,j; for (i=1; i=w[i]; j--... 阅读全文
posted @ 2014-08-18 09:56 2014acm 阅读(113) 评论(0) 推荐(0) 编辑
摘要: #include #include using namespace std;int dp[1005], w[105],v[105],T,M;int max(int x,int y){ return x>y?x:y; }void f( ){ int i,j; for (i=1; i=0; j-... 阅读全文
posted @ 2014-08-18 08:34 2014acm 阅读(155) 评论(0) 推荐(0) 编辑