动态规划
文章平均质量分 80
noaxp
这个作者很懒,什么都没留下…
展开
-
NBUT 1153 Hero May Die But the King Will Never
题意就是勇士给国王当肉盾,每个勇士最多挡s秒就回家洗洗睡了,然后下一个勇士至少在他离开后b秒才会到来,攻击总共持续m秒,求国王所受最小伤害 首先考虑到抵挡时间可以小于s秒,其次两个勇士之间间隔可能会大于b秒,但是不会大于b+m秒,否则则这段空闲时间内就可以再多出一个勇士来防御了,不是最优解。 然后就定下来思路了,用数组储存前x秒攻击之和为sum[x]。 状态dp[x]定义为从x秒开始原创 2015-04-15 12:00:55 · 499 阅读 · 0 评论 -
HDOJ 4352 XHXJ's LIS
题意:定义一个数的力量为这个数的最长严格上升子序列长, 找出区间内力量等于k的数,数据范围是long long型比较明显的数位DP,重点在于怎么找这个最长严格上升子序列。用经典的dp可以做到nlgn求解最长子序列,dp[x]就是长度为x的子序列最后一位的最小值。实际上因为dp[x]是严格递增的,所以可以直接用状压来保存dp[x]中有哪些数,这个问题就解决了。剩下的就是数位dp套路了。下面代码dp[f原创 2016-03-15 20:49:00 · 338 阅读 · 0 评论