斜率优化DP

HDU3507 题目大意:一篇文章有\(N(N≤500,000)\)个单词,单词\(i(0≤i<N)\)的权值为\(C_i\)。将原文分成任意多行打印(当然不能把单词拆开-_-),若将单词\(i...j(0≤i≤j<N)\)在一行打印,则该行的打印费用为\(\displaystyle\sum_{k=i}^{j}C_k+M\)\(M\)为常数。求打印全文的最小费用。

\(f_i\)为打印单词\(0...i\)的最小费用,状态转移方程为$$f_i=\min_{i=0...N-1, j=0...i}f_j+\sum_{k=j}^{i}C_k+M$$
很明显\(O(N^2)\)的方法超时了。

posted @ 2017-08-25 20:22  Planet6174  阅读(254)  评论(0编辑  收藏  举报