单调队列/单调栈优化
介绍
题目大意:城镇中有
初始你可在任意位置,你每个单位时间可以移动不大于
设
写出 状态转移方程:
这里的
我们尝试将状态转移方程进行变形:
由于
如果确定了
最后,式子变成了这个样子:
看到这一熟悉的形式,我们想到了什么?单调队列优化。由于最终式子中的
总的时间复杂度为
讲完了,让我们归纳一下单调队列优化动态规划问题的基本形态:当前状态的所有值可以从上一个状态的某个连续的段的值得到,要对这个连续的段进行 RMQ 操作,相邻状态的段的左右区间满足非降的关系。
单调队列优化多重背包
你有
不了解背包 DP 的请先阅读 背包 DP。设
时间复杂度
考虑优化
设
这样就转化为一个经典的单调队列优化形式了。
习题
贡献者:@Shuhao@Crescent12138@kenlig@mgt@Early@sshwy@SingerCoder@zhangmin@Chrogeek@Henry-ZHR@ouuan@Ir1d@Xeonacid
本页面最近更新:2/3/2023, 12:00:00 AM,更新历史
发现错误?想一起完善? 在 GitHub 上编辑此页!
本页面的全部内容在 CC BY-SA 4.0 和 SATA 协议之条款下提供,附加条款亦可能应用