题面 最近在搞dp, 发现自己的dp还是太弱了, 做的题比较少, 也有一些东西没学, 这道题算是我独立做的第一道斜率优化dp, 写篇题解纪念一下吧. dp式比较简单, 就是一个线性的dp, 设\(f[i]\)为将1 ~ i分为若干个集合所花费的最小值, \(c[i]\)为1 ~ i的\(c\)值的前缀和, 对于满足\(j\)小于\(i\)的\(j\), 则有: \[ f[i] = min(f[j] + (c[i] - c[j] + i - j - 1 - l)^2)\tag{1} \]…