动态规划-背包
Rain722
这个作者很懒,什么都没留下…
展开
-
UVA12563Jin Ge Jin Qu hao(01背包变形:两个条件最优化)
来自大佬的博客:http://blog.csdn.net/u013480600/article/details/40376143UVA 12563 Jin Ge Jin Qu hao(01背包变形:两个条件最优化)http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_proble原创 2017-03-13 10:31:32 · 442 阅读 · 0 评论 -
HDU4815Little Tiger vs. Deep Monkey(01背包)
题意:给出N道题,和一个概率P,然后给出每道题对应的得分x(每道题只有两个选项,一个正确一个错误)。两个人来答题,一个人是随机选择答案,问另一个人至少要答多少分才能保证有P的概率不会失败。思路:01背包,最大分数为40000,01背包处理,记录这40000个分数出现的次数然后从小分数遍历一边即可#includeusing namespace std;typedef lo原创 2017-08-14 16:46:37 · 342 阅读 · 0 评论 -
Codeforces837D - Round Subset 【DP】
D. Round Subsettime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputLet's call the roundness of the number the原创 2017-08-25 13:16:43 · 299 阅读 · 0 评论 -
HDU5543Pick The Sticks(01背包)
/*【题意】给你一个长度为m([1,2000])的长条状容器。然后我们有n([1,1000])段木棒。第i段木棒有一个长度a[i].l和价值a[i].v。我们希望把尽可能大价值的木棒放到容器中,使得所有木棒的重心都在容器内要求木棒不能重叠。【分析】用f[i][j][u]表示现在处理到前i根木棍,它们在容器内占据的长度为j,且有u条木棍悬挂在外的最大价值。这个DP多加了一个维度原创 2017-08-22 09:15:03 · 354 阅读 · 0 评论 -
codeforces755F. PolandBall and Gifts(贪心+多重背包)
【题目链接】:http://codeforces.com/contest/755/problem/F【题意】 n个人; 计划是每个人都拿一个礼物来送给一个除了自己之外的人; 且如果一个人没有送出礼物,那么它和它送礼物的对象都得不到礼物; 但是已经知道有k个人会忘记带礼物来; 问最少有几个人收不到礼物,最多有多少个人收不到礼物 【题解】 ① 对原创 2017-08-09 20:55:54 · 702 阅读 · 0 评论 -
HDU6092Rikka with Subset(逆向背包)
题意:有一个数列 a[] ,长度(n题解:如果 B_iBi 是 BB 数组中除了 B_0B0 以外第一个值不为 00 的位置,那么显然 ii 就是 AA 中的最小数。现在需要求出删掉 ii 后的 BB 数组,过程大概是反向的背包,即从小到大让 B_j-=B_{j-i}Bj−=Bj−i。时间复杂度 O(nm)O(nm原创 2017-08-09 11:01:16 · 537 阅读 · 0 评论 -
HDU5501The Highest Mark(贪心+背包)
传送门:点击打开链接题意:类似cf的赛制,每道题目有A,B,C三个值,A表示初始分数,B表示每分钟题的分数会减少B,C表示做这道题需要C分钟,数据保证分数不会变为负数。现在给出比赛时长,问安排做题的顺序,求最大得分。思路:这道题是一道非常经典的题。首先很容易想到一件事,给出的题哪个先做没有先后顺序,那么在动态规划的时候,必然有前后顺序,所以要么就是状态压缩,要么就是原创 2017-07-19 17:05:33 · 442 阅读 · 0 评论 -
ZOJ - 3956Course Selection System(背包)
Course Selection SystemTime Limit: 1 Second Memory Limit: 65536 KBThere are n courses in the course selection system of Marjar University. The i-th course is described by two values: happ原创 2017-04-10 12:33:33 · 552 阅读 · 0 评论 -
POJ3211Washing Clothes(分组01背包)
题意:两个人洗衣服, 每种颜色的衣服有多件, 要求两人只能同时洗相同颜色的衣服, 求洗衣服的最短时间。分析:因为只能同时洗相同颜色的衣服, 因此可将不同颜色的衣服看为不同的组, 分别求出来每组的最短时间, 其和即为所求;每组最短时间就是0 1背包;对于每种颜色洗它都有一个总时间,要求洗这种颜色的最少时间,就是求看能不能一个人洗这种颜色的衣服达到总时间的一半,也就是让两个人洗这种颜色的衣原创 2016-10-07 19:04:57 · 347 阅读 · 0 评论 -
HDU2602Bone Collector(01背包)
这个题目有个坑就是体积为零。01背包问题,这种背包特点是:每种物品仅有一件,可以选择放或不放。用子问题定义状态:即dp[i][v]表示前i件物品恰放入一个容量为v的背包可以获得的最大价值。则其状态转移方程便是:dp[i][v]=max{dp[i-1][v],dp[i-1][v-cost[i]]+value[i]}注意体积为零的情况,如:15 02 4原创 2016-10-15 15:43:45 · 384 阅读 · 0 评论 -
CodeForces366C. Dima and Salad(01背包变形好题)
题目大意:给出n个物品,有两个属性,问最后第一个属性的总和是第二个属性的k倍的时候,第一个属性最大是多少。题目分析:我们将物品做一个变形,重量为a[i]-b[i]*k,收益是a,那么我们只需要对重量为正的做一遍背包,对质量为负的取绝对值做一遍背包,然后重量相等的背包的收益之和就是当前重量下的最大收益.注意转移中,要排除从不存在的状态中转移过来的情况!#inclu原创 2017-03-09 12:47:18 · 639 阅读 · 0 评论 -
POJ2184Cow Exhibition(01背包变形)
题目链接:http://poj.org/problem?id=2566题意:每行给出si和fi,代表牛的两个属性,然后要求选出几头牛,是的则求出总S与总F的和,注意S与F都不能为负数思路:很明显的就是取与不取的问题,对于这类问题的第一想法就是背包,但是这道题目很明显与一般的背包不同,因为有负数,但是联想到以前也有这种将负数存入下标的情况,那就是将数组开大原创 2017-08-02 20:35:59 · 393 阅读 · 0 评论