总结DP优化

Posted bobh

tags:

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

斜率优化

对形如:

[ f_i=min/max {f_j+w_{i,j} } ]
[ 更确切地,为形如f_i=min/max_{j<i}{f_j+g_1(i)*g_2(j)+h_1(i)+h_2(j)} ]
[ (关键在于含有关于i,j的函数的乘积g_1(i)*g_2(j)) ]

的dp方程可使用斜率优化

移项,得:
[ f_j+h_2(j)=g1(i)*g_2(j)+f_i-h_1(i) ]
(则f_i-h_1(i)可以看做是用斜率为g_1(i)的直线去截坐标系上的点(g_2(j),f_j+h_2(j))\在y轴上得到的截距)

  • (若g_1(i)与g_2(j)均单调):

(用单调队列维护对应凸包上的点\ 转移时先从队首删去所有不再可能成为新的转移决策点的点(该转移一定满足决策单调),\ 确定f_i的值后再从队尾删去不在新凸包上的点,两次操作均由比较斜率完成)

  • (若不单调若g_1(i),g_2(j)不单调):

(用平衡树+二分或cdq分治维护凸包/完成转移)

wqs二分/凸优化/带权二分





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

斜率优化总结

总结DP优化

dp 单调性优化总结

斜率优化(DP)

决策单调性优化dp 专题练习

6. 动态规划