别样的丁真让我讲 T2,所以提前写点东西出来。
诗人小G
首先根据题意,比较好写的是 \(\mathcal{O(n^2)}\) 的转移:
\[f_i=\min_{j=0}^{i-1}\ f_{j}+abs(sum_i-sum_j-L-1)^p \]其中 \(sum\) 为句子长度的前缀和。
发现可优化的点是后面一坨柿子,我们把它记为 \(G_{i,j}=abs(sum_i-sum_j-L-1)^p\)。如果它具有决策单调性,那么我们就可以上单调队列优化了。
只需证明 $G_{i+1,j}+G_{i,j+1}\ge G_{i,j}+G_{i+1,j+1} $,即 \(G_{i,j}\) 满足四边形不等式。做法是拆开移项合并再分讨,搬锣鼓题解了。
然后直接上单调队列即可。
需要注意的是本题有很多细节问题,行中有空格行尾每空格,办法可以是在求前缀和前直接处理好,当然也可以中途处理,就是有点麻烦。以及数据范围,题目贴心地提示了可能会出现状态的值 \(\gt 10^{18}\) 的情况,我们可以以精度换值域使用 long double
存储,然后就做完了。复杂度 \(\mathcal{O(Tn\log n))}\)。