随笔分类 - ACM---动态规划
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3466与顺序有关的01背包。如果一个物品p = 5,q = 7,一个物品p = 5,q = 9,如果先算第一个,那么当次只有7,8...m可以进行状态转移,装第二个物品的时候9,10..m进行转移,第二个...
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2955题目给了每个银行的钱和被抓的概率,由于要抢尽量多的钱,所以要保证尽量不被抓,而抢多个银行之后不被抓的概率是抢每一个银行不被抓的概率之 积,dp[]表示抢到下标所对应的钱时,此时不被抓的概率,题目给出...
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2639求01背包的第k大解。合并两个有序序列选取物品i,或不选。最终的结果,是我们能在O(1)的时间内,判定对于体积j,是否应当选取第i件物品。 我们在这里作出了最优的选择。那被我们抛弃的选择呢?他很可能...
阅读全文
摘要:D:Bad Luck Island一个岛上有r个石头,s个剪子,p个布,他们之间随机挑出两个相遇,如果不是相同物种,就会有一个消失,分别求出最后这座岛上只剩下一个物种的概率。我们用dp[i][j][k]来存储剩下 i 个石头, j 个剪刀,k 个布时的概率,共dp三次;如果石头与剪刀碰面,概率是 p...
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5569简单dp,恶心的边界处理,无语;if((i+j)%2==1)dp[i][j]=a[i-1][j]*a[i][j]+min(dp[i-2][j], dp[i-1][j-1]); ...
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2546这是一个变形的01背包问题,首先如果金额小于5元,剩余金额不变,为已有金额。如果大于等于5元我们先用5元买最贵的菜。然后用剩下的钱买其他的菜这时就是一个典型的01背包问题了;求出最大的花费,然后用总...
阅读全文
摘要:题目链接:http://poj.org/problem?id=3666题意是给出一组数,每个数代表当前位置的地面高度,问把路径修成非递增或者非递减,需要花费的最小代价?///用dp[i][j]表示:前i个数构成的序列,这个序列最大值为j,dp[i][j]的值代表相应的cost。///dp[i][j]...
阅读全文
摘要:题目链接:http://poj.org/problem?id=3616题意:人从奶牛身上挤奶有m个时间段(1----n),每个时间段包含 s e f 表示从 s 到 e 的这段时间可以获得 f 单位的牛奶,每次一个时间段结束后休息 r 小时进入下一时间段我们可以把休息的r小时加到每个时间段的结束时间...
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5115 题意:有一排狼,每只狼有一个伤害A,还有一个伤害B。杀死一只狼的时候,会受到这只狼的伤害A和这只狼两边的狼的伤害B的和。如果某位置的狼被杀,那么杀它左边的狼时就会收到来自右边狼的B,因为这两只狼是
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1950 一直只知道有除n*n的算法之外的求LIS,但是没学过,也没见过,今天终于学了一下,dp[i]表示以a[i]为末尾的最长上升子序列的长度; 其实就是下面大神写的这样: #include<stdio.
阅读全文
摘要:题目链接:http://poj.org/problem?id=1661下图是左边的,右边的同理:#include#include#include#includeusing namespace std;#define N 1100#define INF 0xffffffstruct node{ ...
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2859 题意就是给你一个n*n的字符矩阵,从中选出一个最大的子矩阵(m*m)满足关于斜对角线(左下角到右上角)对称,求出这个矩阵的大小m; 我们可以用dp[i][j]表示当前位置到右上角这个子矩阵所能表示
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1160题意就是给你一些老鼠(编号1,2,3,4,5,6,7,8...)的体重和他们的速度然后求出最大的n满足W[m[1]] S[m[2]] > ... > S[m[n]]然后把原来的编号按照上面的序列输...
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1260题意是有n个人排队买票,第 i 个人买票所需要的时间是a[i],这个人和 i-1 或者 i+1 合买的时间是b[i];当然每个人都要等到前面所有的人都买完了才能买,我们求所需总时间至少是多少,工作人...
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1114题意是有一个存钱罐,当它是空的时候重量为E,满的时候重量为F;已知存钱罐里面有 n 种钱,每种钱的价值为 P 重量为 W ;求存钱罐满的时候里面至少有多少钱;是一个完全背包(求从n个物品中选出总重量...
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1087题意就是给你n个数,找出某个序列的最大和,这个序列满足依次增大的规则;哎,这个题之前做过,但是一点印象都没有但是自己写出来了,估计当时写的时候也不知道为什么这样写吧,事实证明,题做多了自然就懂了;我...
阅读全文
摘要:题目链接:http://lightoj.com/volume_showproblem.php?problem=1005题意就是在一个n*n的方格中放k个棋子,每一行每一列都不能有两个棋子,问有多少种方法,和8皇后问题很像, 但是8皇后问题可以用暴力搜索,但是本题n的取值范围较大,不能用搜索;在比赛的...
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1029就是给你n(n是奇数)个数找出个数大于(n+1)/ 2 的那个数;n的取值范围是n(1#include#include#include#includeusing namespace std;#def...
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5501二维数组:#include#include#include#include#includeusing namespace std;#define N 3100int dp[N][N];struct ...
阅读全文
摘要:题目链接:http://acm.fzu.edu.cn/problem.php?pid=2128刚开始怎么也看不出来样例的答案;还好突然觉悟;具体看代码吧;#include#include#include#include#define N 1001000using namespace std;stru...
阅读全文

浙公网安备 33010602011771号