- 博客(4)
- 收藏
- 关注
原创 HDU-3045 Picnic Cows 【DP+斜率优化】
题目链接题意有N只奶牛,每只奶牛有一个满意度,如果把一些奶牛分到一个组内,那么这些奶牛的满意度都会下降到组中满意度的最小值。现在规定每个组至少T只奶牛,求总的满意度变化的最小值分析从这个题中我学到了斜率DP中规定了转移距离的最小值时的处理方法(也就是i必须从小于等于i-T的状态转移而来) 状态不难想出,先对奶牛的满意度排个序,设dp[i]为前i只奶牛分好组后的满意度下降最小值,显然有: dp[i
2017-03-11 16:31:12 413
原创 HDU-3480 Division 【DP+斜率优化(二维)】
题目链接题意定义一个集合的花费是这个集合中的最大值减最小值的平方。然后给定一个集合S,求对这个集合的一个覆盖,使得所有子集的花费和最小。分析本身这个题是非常简单的,只是今天看了别人的题解,我发现我以前写的二维斜率优化都写复杂了。直接外层循环用未被优化的那一维就行了,不用像我以前那样维护一个k维的单调队列……我说怎么不对劲,每次看别人的代码都那么短…… 具体见代码AC代码//HDU-3480 Div
2017-03-11 15:26:24 437
原创 POJ-1180 Batch Scheduling 【逆向DP+斜率优化】
题目链接题意一台机器有N个物品要处理,每个物品的处理时间是Ti,花费系数是Fi,可以把这N个物品分包处理,打包需要花费时间S,机器每处理完一包物品就会把当前时间显示出来(刚开始处理时时间为0),那么这包中每个物品的花费就是显示的这个时间乘以其花费系数。求处理完所有物品的最小花费。分析朴素的想法设状态为处理前i个物品的最小花费,但是单考虑前i个物品的花费是有后效性的,因为每新增一个包它的开始时间是由前
2017-03-05 15:21:20 458
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人