题目大意:有$n$个带有颜色的方块,消除一段长度为$x$的连续的相同颜色的方块可以得到$x^2$的分数,求一种最优的消除顺序消除所有方块使得得分最多。
题解
设 $f(i, j, k)$ 为当前区间为 $[i, j]$,且区间中消除到有 $k$ 个和 $i$ 处颜色相同的方块时,可以得到的最大分数。显然,答案为 $f(1, n, 0)$。
当 $k\neq 0$ 时,要考虑从 $k-1$ 转移过来。此时考虑从 $[i, j]$ 中遍历 $l$,当第 $l$ 个方块颜色和第 $i$ 个相同时,将从 $l$ 左或者从 $l$ 右开始的一部分作为从 $k-1$ 转移过来的部分,另一部分消去。因为消去的顺序不影响结果,此处将右边一半消去。从而有:
当 $k=0$ 时,考虑将积累下来的方块消去,就有:
1 |
|