随笔分类 -  DP—背包问题

摘要:题目链接分析:完全背包的变形,每一层的d[]数组代表这一层的这个数新加入以后所构成的val的种类。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 const int maxn = 500+10; 8... 阅读全文
posted @ 2014-08-04 15:25 水门 阅读(227) 评论(0) 推荐(0)
摘要:最近计划刷点dp的题目,先把以前做的背包复习一下。01背包有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。求解将哪些物品装入背包可使价值总和最大。题目链接题意:n个骨头,背包体积为v, 下面两行,第一行是骨头的价值,第二行是骨头的体积。注意:有可能有体积为0,但是有价值的... 阅读全文
posted @ 2014-05-24 00:40 水门 阅读(160) 评论(0) 推荐(0)
摘要:题目:http://poj.org/problem?id=1276题意:费用和价值相同的多重背包。以前看背包的时候做过,今天又做了一遍。二进制优化代码 1 #include 2 #include 3 #include 4 using namespace std; 5 6 int _max(int ... 阅读全文
posted @ 2013-10-14 21:23 水门 阅读(172) 评论(0) 推荐(0)
摘要:大范围贪心,小范围背包#include<stdio.h>#include<string.h>long long d[2100];int max_num(int a,int b){ return a>b?a:b;};int main(){ long long i,j; long long m,w[10],p[10],v,n; double val,max; int id,x=1,t; scanf("%d",&t); while(t--) { max=0; for(i=1; i<=3; i++) { ... 阅读全文
posted @ 2013-06-01 17:32 水门 阅读(138) 评论(0) 推荐(0)
摘要:转自(http://www.cnblogs.com/tanhehe/articles/2998736.html)转自(http://www.cnblogs.com/vongang/archive/2011/12/23/2299729.html)在背包九讲里面将多重背包转化为01背包,并且进行时间优化... 阅读全文
posted @ 2013-04-29 09:54 水门 阅读(246) 评论(0) 推荐(0)