转自:背包久讲Tianyi Cui初始化的细节问题我们看到的求最优解的背包问题题目中,事实上有两种不太相同的问法。有的题目要求“恰好装满背包”时的最优解,有的题目则并没有要求必须把背包装满。一种区别这两种问法的实现方法是在初始化的时候有所不同。如果是第一种问法,要求恰好装满背包,那么在初始化时除了f...
分类:
其他好文 时间:
2014-12-02 23:53:40
阅读次数:
290
描述
现在有很多物品(它们是可以分割的),我们知道它们每个物品的单位重量的价值v和重量w(1<=v,w<=10);如果给你一个背包它能容纳的重量为m(10<=m<=20),你所要做的就是把物品装到背包里,使背包里的物品的价值总和最大。
输入第一行输入一个正整数n(1
随后有n测试数据,每组测试数据的第一行有两个正整数s,m(1
输出输出每组测试数据中背包内的物品的价值和,每...
分类:
其他好文 时间:
2014-12-02 22:44:28
阅读次数:
211
P01: 01背包问题题目有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。基本思路这是最基础的背包问题,特点是:每种物品仅有一件,可以选择放或不放。用子问题定义状态:即f[i][v]表示前i件物品...
分类:
其他好文 时间:
2014-12-02 20:44:28
阅读次数:
180
1、完全背包--背包不允许剩余#include #include #define N 50002#define M 2002using namespace std; //测试OJ:nyoj 311 /* 背包不允许剩余,与允许剩余相比,只需将d[i]初始为负无穷大,d[0]=0 d[i]...
分类:
其他好文 时间:
2014-11-28 22:35:05
阅读次数:
275
题目大意:给你价值为1、2、3、4、5、6六种宝石的个数,把它按价值
平均分成两份,不能切割,不能分开。问是否能平分
思路:多重背包问题。先判断下宝石总价值是不是偶数,只有偶数才能平
分。若是偶数在用多重背包左。只要总容量为价值的一半的背包能装满就
能平分。多重背包用了二进制的思想。...
分类:
其他好文 时间:
2014-11-28 08:45:22
阅读次数:
235
多种方法,我用DP做的。
我当成的 最长下降子序列做的。 问了下其他人,有树形DP的,有差分约束用最短路的。
还有当作 二维的背包问题的。
最长单调子序列,长宽高 x,y,z 分别枚举成六个。然后排序,找最长单调子序列即可。
#include
#include
#include
#include
#include
#include
#include
#include
#include
...
分类:
其他好文 时间:
2014-11-27 10:48:57
阅读次数:
228
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2191分析:========================================多重背包问题定义&基本实现问题:有个容量为V大小的背包,有很多不同重量weight[i](i=1..n)不同价值...
分类:
其他好文 时间:
2014-11-27 00:14:30
阅读次数:
337
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1712分析: 典型的分组背包问题,如果不会的可以看一下背包九讲。 看下背包九讲中的描述: for 所有的组k forv=V..0 for 所有...
分类:
其他好文 时间:
2014-11-25 18:02:18
阅读次数:
179
0-1 背包问题描述:设背包空间为V,有n个物品 x1,x2,...,xn。第i个物品的重量为C[i],价值为W[i],1<= i <= n。求背包能装下的物品的最大价值。动态规划解决0-1背包分为4个步骤,1.最优子结构2.递归方程3.略4.略1.最优子结构分析:设解空间为X(x1,...,xj)...
分类:
其他好文 时间:
2014-11-25 09:10:04
阅读次数:
153