随笔分类 -  我的dp之路

上一页 1 2 3 4 5 6 下一页

hdu2845(dp)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2845题意:给你一个n*m的矩阵,每个位置有一定数量的豆子,如果你去map[x][y]位置上的豆子,则map[i-1][]行和map[i+1][]行,以及map[i][j-1]和map[i][j+1]位置... 阅读全文

posted @ 2014-12-29 21:54 lienus 阅读(217) 评论(0) 推荐(0)

hdu2844(多重背包)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2844题意:一位同学想要买手表,他有n种硬币,每种硬币已知有num[i]个。已知手表的价钱最多m元,问她用这些钱能够凑出多少种价格来买手表。分析:二进制优化的多重背包,假设每种硬币为容量为val[i]且价... 阅读全文

posted @ 2014-12-25 01:34 lienus 阅读(177) 评论(0) 推荐(0)

hdu3006(状态压缩)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3006题意:给定一些集合,求这些集合所能组合的集合个数。分析:这题就是用一个二进制数保存一个集合的元素 比如一个集合中有两个元素 1 3 那就用5 (101)表示这个集合就是用0 1 来表示这个集合中一个... 阅读全文

posted @ 2014-12-15 01:26 lienus 阅读(142) 评论(0) 推荐(0)

hdu1709(母函数)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1709题意: 给你一个n,表示n个物品,下面有n个数,表示n个物品的重量,然后进行称量,每个物品只有一件,看不能称出的价值有几个。分析:母函数裸题,再处理一下相减的情况。#include #include... 阅读全文

posted @ 2014-12-14 21:29 lienus 阅读(218) 评论(0) 推荐(0)

hdu1881(贪心+dp)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1881分析:按照结束时间从小到大排序,然后以每个结束点为容量进行01背包,选入的必定符合条件的。 因为可能在某一结束点得到的价值最大,并不是dp[mx]最大容量得到的价值最大,所以要对dp值全部扫一遍得出... 阅读全文

posted @ 2014-12-14 16:55 lienus 阅读(194) 评论(0) 推荐(0)

hdu1513(最长公共子序列)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1513题意:将一个字符串转变为回文串的最少添加字符个数分析:只要想到将字符串逆序后与原字符串求最长公共子序列,最少添加数为len-LCS,这题又是一道裸LCS。这里还是要滚动数组优化空间才行。#inclu... 阅读全文

posted @ 2014-12-14 15:36 lienus 阅读(139) 评论(0) 推荐(0)

hdu1243(最长公共子序列变形)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1243分析:dp[i][j]表示前i个子弹去炸前j个恐怖分子得到的最大分。其实就是最长公共子序列加每个字母值为1,这里每个字母代表的值变化了一下。 状态转移方程:if(s1[i-1]==s2[j-1])d... 阅读全文

posted @ 2014-12-14 15:12 lienus 阅读(236) 评论(0) 推荐(0)

hdu3811(状态压缩dp)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3811题目大意:给定1~N个数,求出至少满足一个条件的排列总数。M个条件如下:Ai位置的数为Bi分析:通过求出一个条件不满足的排列总数,从而间接的求出满足至少一个条件的排列总数。 dp[n][state]... 阅读全文

posted @ 2014-12-14 00:04 lienus 阅读(199) 评论(0) 推荐(0)

poj1243(经典dp)
摘要:题目链接:http://poj.org/problem?id=1243题意:让你猜一个物品的价格,猜低了或者猜高了都会提示你。G,L,表示你有G次机会猜一个数,如果猜错了,G会减少1次,如果你的错误是应该是猜高了,那么L也会少一次(猜低了L不会少)。如果G次机会都用完了,则输;若G次机会还有剩余,而... 阅读全文

posted @ 2014-12-13 15:50 lienus 阅读(593) 评论(0) 推荐(0)

poj2479(dp)
摘要:题目链接:http://poj.org/problem?id=2479题意:求所给数列中元素值和最大的两段子数列之和。分析:从左往右扫一遍,b[i]表示前i个数的最大子数列之和。从右往左扫一遍,c[i]表示后i个数的最大子数列之和。 ans=max(ans,b[i]+c[i+1])0#include... 阅读全文

posted @ 2014-12-12 23:39 lienus 阅读(214) 评论(0) 推荐(0)

hdu1876(dp)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1876题意:问机器人到达终点的过程中最多有几次完全消耗完能量,消耗完这么多次能量的方式有几种。分析:模拟一下可知,每次走到下一次消耗完时必定在一条对角线上。以sample为例:由于整个过程是以对角线的方向... 阅读全文

posted @ 2014-12-09 22:47 lienus 阅读(216) 评论(0) 推荐(0)

hdu2159(二维完全背包)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2159题意:打怪,还有最后一级,忍耐度有限m,问在杀怪数量上限为s的情况下能否获取n经验而通关,且忍耐度花越少越好。分析:dp[i][j]表示打了数量为i花费忍耐度为j得到的最大经验值。状态转移方程:dp... 阅读全文

posted @ 2014-12-08 16:48 lienus 阅读(136) 评论(0) 推荐(0)

hdu3496(二维背包)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3496题意:题意是 DuoDuo 想看n部电影,但是被要求最长能看的总时间数为 L,每部电影有他的时长和DuoDuo对他的评价值两个属性。 但是商店有个奇怪的要求 一次只卖恰好m 个电影碟 (m#incl... 阅读全文

posted @ 2014-12-08 16:14 lienus 阅读(170) 评论(0) 推荐(0)

hdu3033(变形分组背包)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3033题意:Iserlohn要买鞋,有k种牌子,每种牌子至少买一双鞋子。每双鞋子有标价跟实际价值。求用m多的钱买最多价值的鞋。分析:分组背包是有k组物品,每组至多取一件或不取,用容量为v的背包装最多价值的... 阅读全文

posted @ 2014-12-08 14:26 lienus 阅读(222) 评论(0) 推荐(0)

hdu1503(最长公共子序列)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1503题意:由两个字符串构造出另一个字符串,该字符串包含前两个字符串(按字符顺序,但不一定连续),使该字符串长度最小分析:dp[i][j]表示s1[0-i]与s2[0-j]的最长公共子串.用数字flag随... 阅读全文

posted @ 2014-12-07 01:47 lienus 阅读(438) 评论(0) 推荐(0)

hdu2639(背包求第k优解)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2639题意:给出一行价值,一行体积,让你在v体积的范围内找出第k大的值分析:dp[i][j][k]表示前i个物品容积为j时的第k优解。那么对于每种状态dp[i][j]都需要维护好前k优解。 每次根据前k优... 阅读全文

posted @ 2014-12-07 00:20 lienus 阅读(224) 评论(0) 推荐(0)

hdu3602(变形背包)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3602题意是:N个国家,M个飞船,每个国家有人数num,如果上飞船就给联合国value钱,选出某些国家上船且每个国家所有人都必须在同一艘船上,使联合国赚得的钱最多,而且被选出的国家上船的顺序必须和原给的国... 阅读全文

posted @ 2014-12-06 20:39 lienus 阅读(177) 评论(0) 推荐(0)

hdu1160(最长上升子序列)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1160题意:给定一些小猫的属性:体重和速度。然后求某些猫顺序的排列,使得体重上升,速度下降,这样的排列尽量长。分析:主要将速度按从大到小排序,然后对体重求最长上升子序列即可,这里因为要记录路径,所以只能O... 阅读全文

posted @ 2014-12-05 18:01 lienus 阅读(162) 评论(0) 推荐(0)

hdu1260(dp)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1260分析:简单dp,dp[i]=min(dp[i-1]+a[i],dp[i-2]);#include #include #include #include #include #include #incl... 阅读全文

posted @ 2014-12-03 23:48 lienus 阅读(151) 评论(0) 推荐(0)

hdu1158(dp)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1158分析:dp[i][j]表示第i个月用j个人需要花费的最少费用;则状态转移方程为:dp[i][j]=min(dp[i-1][k]+j*b+(j>k?(j-k)*a:(k-j)*c),dp[i][j])... 阅读全文

posted @ 2014-12-02 15:21 lienus 阅读(149) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 下一页

导航