斜率优化小结

Posted atoner

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了斜率优化小结相关的知识,希望对你有一定的参考价值。

斜率优化小结

博主是个智障,总是忘记斜率优化的过程。为了方便以后考前临时抱佛脚,写个博客。

斜率优化维护下面的问题:

(f_i=min_{j<i}{f_j+(a_i-b_j)^2})

其中(min)(max),和(+)(-)(a_i,b_j)均只取决于(i,j)

首先不看取(min)。我们钦定它的决策点是(j),有:

(f_i=f_j+a_i^2+b_j^2-2a_ib_j) 其中符号什么的视情况而定。

(实际上未必是最上式,可以整理成上式的也都可以做斜率优化,甚至未必系数为2)

移项得:(2a_ib_j+f_i-a_i^2=f_j+b_j^2)

我们把(b_j)设为(x)(f_j+b_j^2)设置为(y)。这样每个决策点(j)可以看成点((b_j,f_j+b_j^2))

转移我们看作拿一个斜率是(a_i)的直线,去切一群点,考虑最小化(f_i),所以要求截距最小。

又斜率都是正的,所以考虑拿这个切出来的点应该是下凸包。

维护凸包根据各种要求,有平衡树,cdq分治,普通单调队列等。

以上是关于斜率优化小结的主要内容,如果未能解决你的问题,请参考以下文章

斜率优化复习小结

凸包小结

DP斜率优化

斜率优化规律

模板斜率优化dp

斜率优化系列——训练记录