今天主要写一下题解,总结待整理好后另开一篇发表(大约是明天)。
题面见各大OJ。本次题解都是讨论对于已经列好的DP方程的优化。
【HDU3401】
单调队列优化要求参数分离和枚举区间单调。对于二维的dp数组看参数是否分离开,可以先忽视i只看j与k。
发现是简单的单调队列优化。
【HDU2490】
绝对值可以拆开(分情况讨论),然后是简单的单调队列优化。
跳石头
单调队列优化不能求极值。参数已经分离了,于是用线段树做。
参数分离后,能用单调队列优化就用,用不了就用线段树。
序列划分
维护一个单调队列即可。
打印文章
典型的带有平方的DP方程,用普通的斜率优化可做,因为是单调的所以询问时直接弹掉。
【NOI2009】写诗
满足决策单调性,但不能用斜率优化。
就只能用一般的决策单调性方法。复杂度多一个
log
。
【HDU2993】
斜率优化不单调,二分答案来弹掉。
【BZOJ1010】玩具装箱toy
典型的斜率优化。
建邮局
决策单调性,但可以用四边形不等式优化。
你看,四边形不等式优化和斜率优化都比决策单调性优化好。
【51NOD1033】
考虑矩阵快速幂。32种状态,可以压一压,转移矩阵有1024种,可以使用码长科技。
【NOI2007】一张无向图
同样的,找出所有状态再套矩阵快速幂。