摘要: 我们知道,有些DP方程可以转化成DP[i]=f[j]+x[i]的形式,其中f[j]中保存了只与j相关的量。这样的DP方程我们可以用单调队列进行优化,从而使得O(n^2)的复杂度降到O(n)。可是并不是所有的方程都可以转化成上面的形式,举个例子:dp[i]=dp[j]+(x[i]-x[j])*(x[i]-x[j])。如果把右边的乘法化开的话,会得到x[i]*x[j]的项。这就没办法使得f[j]里只存在于j相关的量了。于是上面的单调队列优化方法就不好使了。这里学习一种新的优化方法,叫做斜率优化,其实和凸包差不多,下面会解释。举例子说明是最好的!HDU 3507,很适合的一个入门题。http://a 阅读全文
posted @ 2012-08-03 11:56 Accept 阅读(37293) 评论(28) 推荐(23) 编辑