最优化问题 # 背包问题 # 动态规划 # 图 # ...
分类:
其他好文 时间:
2018-09-12 11:14:30
阅读次数:
186
这道题的DP非常的有意思…… 一开始我们总是会以为这是一个背包问题,直接dp[0] = 0,dp[j] += dp[j-c[i]]进行转移。之后统计一下从dp[m-minn]~dp[m]的答案之和为结果。 其中minn指花费最小的那个物品的花费。不过这样是会丢解的。因为统计的过程我们只统计了不选最小 ...
分类:
其他好文 时间:
2018-09-07 22:49:13
阅读次数:
226
满背包问题,把体积和价值看成相等的。用滚动数组优化,然后额外开辟一个choice数组来记录每次的选择,然后回溯打印。因为要按字典序,先把价值进行排序。假如选最小的商品能装满m的话,那就把判断条件改成大于等于,然后最后来 选择最小的那个。 ...
分类:
其他好文 时间:
2018-09-05 23:46:11
阅读次数:
194
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1864 DP题目,背包问题,我们的背包容量为输入的Q,物品的数目使我们输入的N,需要注意的有3个点: 1)物品的种类只能是A、B、C,其他的物品不予报销 2)单个物品种类不能超过600 3)单张发票上可以 ...
分类:
其他好文 时间:
2018-09-05 21:35:26
阅读次数:
125
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2955 经典DP练习题,自己的水平有限,参考了网上其他的答案。 01背包问题,如何选择背包容量和物品的价值在这里是比较困难的地方,把银行的钱当做背包,把概率当做价值,总容量为所有银行的总钱数,求不超过被抓 ...
分类:
其他好文 时间:
2018-09-05 13:54:14
阅读次数:
173
HUSTOJ 1072 小数背包问题 题目描述 有一个背包,背包容量是M(0<M≤500),有N(1<N≤1000)个物品,物品可以分割成任意大小。 要求尽可能让装入背包中的物品总价值最大,但不能超过总容量。 有一个背包,背包容量是M(0<M≤500),有N(1<N≤1000)个物品,物品可以分割成 ...
分类:
其他好文 时间:
2018-09-02 12:30:47
阅读次数:
261
这个题,乍一看感觉挺神的(其实真挺神的),其实是个简单的分组背包(如果恍然大悟就不用接着看了) 取连续的一段是这道题最难以处理的地方,但是观察到物品数量不多<=100(如果恍然大悟就不用接着看了) 不妨把连续取物转化为单个物品,就是说,我们取一段连续物品求和作为一个物品,这样,我们只要满足每组选一个 ...
分类:
其他好文 时间:
2018-09-01 20:34:31
阅读次数:
155
"NIOP2006 金明的预算方案" 题意 依赖性分组背包问题(一个物品最多被两个物品依赖,且被依赖的物品以下没有被依赖的物品)。 解法 如果我们考虑枚举所有的决策,那么我们有: 1. 选 fa 2. 选 fa 和 $ son[1] $ 3. 选 fa 和 $ son[2] $ 4. 选 fa 和 ...
分类:
其他好文 时间:
2018-08-30 11:04:46
阅读次数:
138
描述: 有一个牧场,牧场上有很多个供水装置,现在牧场的主人想要用篱笆把这些供水装置圈起来,以防止不是自己的牲畜来喝水,各个水池都标有各自的坐标,现在要你写一个程序利用最短的篱笆将这些供水装置圈起来!(篱笆足够多,并且长度可变) 输入: 第一行输入的是N,代表用N组测试数据(1<=N<=10)第二行输 ...
分类:
其他好文 时间:
2018-08-29 10:43:32
阅读次数:
143
·背包问题: 有很多的变式 HDU 2546 即在购买之前判断余额。如果购买一个商品之前,卡上的剩余金额大于或等于5元,就一定可以购买成功(即使购买后卡上余额为负),否则无法购买(即使金额足够) 首先拿出5元买最贵的东西,那接下来就是背包容量m-5,物品数量 n-1 的01背包问题了 if(m<5) ...
分类:
其他好文 时间:
2018-08-28 23:54:14
阅读次数:
206