码迷,mamicode.com
首页 >  
搜索关键字:01 背包问题    ( 1524个结果
hdoj 2546 饭卡(0-1背包)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2546思路分析:该问题为0-1背包问题的变形题;问题求余额最少,设开始的余额为V,则求得用V-5可以买到的菜的最大价值,最后留下的5元则用来买菜价最高的菜,可以证明这种购买方式是能够产生最优解的;另外,因...
分类:其他好文   时间:2015-07-29 22:51:58    阅读次数:187
hdoj 2620 Bone Collector(0-1背包)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2602思路分析:该问题为经典的0-1背包问题;假设状态dp[i][v]表示前i件物品恰放入一个容量为v的背包可以获得的最大价值,则可以推导出dp递推公式dp[i][v] = Max{dp[i-1][v],...
分类:其他好文   时间:2015-07-29 21:04:34    阅读次数:85
ZOJ 3450 Doraemon's Railgun (DP·分组背包)
题意  多啦A梦有一个超电磁炮  然后要打死n堆敌人  在同一条射线上的敌人只有先打死前面的一堆才能打后面的一堆  给你打死某堆敌人需要的时间和这堆敌人的人数   问你在T0时间内最多打死多少个敌人 分组背包问题  先要把同一条射线上的敌人放到一个分组里  后面的敌人的时间和人数都要加上前面所有的  因为只有前面的都打完了才能打后面的  然后每组最多只能选择一个   判断共线用向量处理   ...
分类:其他好文   时间:2015-07-29 10:16:47    阅读次数:92
10163 - Storage Keepers(DP)
该题乍看好像背包问题,但是实际上实现起来就会发现细节上还是很不同的,  这小小的不同就可能导致完全错误,所以有必要对具体的推理过程进行归纳总结,以期找到动态规划的通用思路 。 首先,我们应该先完全明确状态方程表示的含义 。 对于该题,设d[i][j]表示i个守卫,看守j个仓库的最小安全系数的最大值 。其实说的简单一点,它就表示最小安全系数 。 一定要明确这一点,才能写出正确的递推关系 。   ...
分类:其他好文   时间:2015-07-28 18:40:21    阅读次数:81
动态规划法
核心数学式:f(n) = F(f(n-1));这里的F有可能比较复杂,比如或许会包括or等运算;可能会导致f(n)会被计算几次,为了保证只被计算一次,需要存储;存储过程就是一个填表的过程,有的可能是填一维表,有的可能是填二维表例子: 斐波那契数列:填关于n的一维表 背包问题:填关于i、j(前i...
分类:其他好文   时间:2015-07-28 12:15:25    阅读次数:115
蛮力法
蛮力法就是以最直观、最直接,从头到尾,从上到下的思维去尝试解决问题。它主要包括以下三种方式:一个一个地解决:冒泡排序尝试所有可能的迭代:顺序查找、模式匹配尝试所有的排列组合:最近点对、背包问题// 冒泡排序void bubble_sort(array[0,..,n]) { for i=0 to...
分类:其他好文   时间:2015-07-28 10:37:03    阅读次数:113
uva12563 Jin Ge Jin Qu hao
题目描述: 从n首歌中选取一定数量的歌,每首歌需要一定的时间演唱: 1、要求在不超过时间st-1的条件下,选取的数量最多; 2、其次在数量相同的情况下,要求歌曲时间总和最大。 解题思路: 本质0、1背包问题,将每个歌曲的时间视为物品体积,价值赋值为1,背包容量为st-1 如何在数量最多的基础上求解歌曲时间总和最大? 在动规的过程中记录更新即可: 1、当前状态比已求的的数量还...
分类:其他好文   时间:2015-07-27 21:02:50    阅读次数:127
UVA12563 Jin Ge Jin Qu hao(DP, 背包+技巧)
题意:求在给定时间内,最多能唱多少歌曲,在最多歌曲的情况下,使唱的时间最长。 该题类似于01背包问题,可用01背包问题的解题思路来求,每个歌曲相当于物品,歌曲的长度相等于物品重量,每个歌曲的“价值”为1。由于金歌劲曲时间最长,所以最后要留至少1秒时间开始唱金歌劲曲,所以计算t-1时间内最多唱的歌曲和时间,最终答案为歌曲数加1,时间加上金歌劲曲的时间。这里我使用滚动数组计算这个值, 用len记录t...
分类:其他好文   时间:2015-07-27 18:58:15    阅读次数:129
分组背包
问题有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。这些物品被划分为若干组,每组中的物品互相冲突,最多选一件。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。算法这个问题变成了每组物品有若干种策略:是选择本组的某一件,还是一件都不选。也就是说....
分类:其他好文   时间:2015-07-25 18:24:53    阅读次数:174
BZOJ4182 : Shopping
最后选择的一定是树上的一个连通块,考虑树分治,每次只需考虑重心必选的情况,这就变成了以重心为根的树形依赖多重背包问题。设f[x][j]表示从根节点到x这条路径及其左边的所有节点,以及以x为根的子树的所有节点中,容量为j的背包选取物品所能得到的最大价值。对于x的儿子y,将f[y]初始值设为f[x]中强...
分类:其他好文   时间:2015-07-25 18:02:34    阅读次数:103
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!