斜率优化dp

  斜率优化dp

  首先让我们来回顾一下:

  这是我6.23说的:

  

  这是7.9说的:

  

  这是7.10说的:

  

  这是7.11说的:

  

  然后请回头看看本文的标题。好的。一个显然的事实是,我放飞自我了。直接原因是:NOIP历年真题会做的都做完了;根本原因是:学新的东西就是比较有意思。当然我可以找到数十个理由来解释我学新东西的合理性和必要性,但是真正的原因就是这个。

     不过PJ都开始考二分+单调队列dp了,TG考斜率也不是不可能的事情。(喜新厌旧的借口 1/1)


  首先来看一道题目:

  玩具装箱:https://www.lydsy.com/JudgeOnline/problem.php?id=1010

  大概是一道斜率优化经典题,不过SC的时候rqy说也可以用四边形不等式优化。

  尝试来概括一下一句话题意:

  把一个长度为$N$的序列分成若干段并给定一个常数L,每段的代价是

  

  最小化这个代价。($1<=N<=50000$)

  朴素的写法当然非常简单啦,就是一个N^2的类似于暴力的dp就可以,问题是它过不了啊...

  这时候就要请出神奇的斜率优化啦!

  把暴力的式子进行一番化简,把只跟$j$有关的放在右边,对于每一个S把她加一,L也加一,可以使式子简约一点。

  

  加一后  ---> 

  

  展开:

  

  再进行一些非常有意思的替换。

猜你喜欢

转载自www.cnblogs.com/shzr/p/9483766.html