QOJ.ac

QOJ

Type: Editorial

Status: Open

Posted by: jiangly

Posted at: 2026-04-09 18:04:06

Last updated: 2026-04-09 18:04:11

Back to Problem

题解

观察:一定存在最优解满足能分成若干形如 $w^is^j$ 的段,且段之间互不影响。

证明:如果段之间有影响,一定形如 wsws。假设 $S[i:i+3]={\tt wsws}$,考虑替换成 wwss 什么时候不优,这样的替换只会使得 $S_{i+5}={\tt s}$ 时的贡献减少,且根据贡献的凸性,只有在 $S[i+2:i+4]$ 全都是 w 的时候答案才可能变小,而这是不可能的。因此任意的解都可以通过有限次上述的替换变成满足条件的解,且答案不会变小。

现在问题变成了把形如 $w^is^j$($i,j\le 3$)的段拿去做背包,使得价值尽可能大。设这样的段的贡献为 $f(i,j)$,那么考虑点集 $S=\left\{\left(\frac{i}{i+j},\frac{f(i,j)}{i+j}\right)\right\}$,当 $W$ 和 $S$ 足够大时可以近似看作选择 $S$ 中的点的一个线性组合,使得横坐标为 $\frac{W}{W+S}$,且纵坐标尽可能大。此时一定只会选择 $S$ 的上凸包的一条边的两个端点。现在要求的是精确解,也可以发现如果选了太多除这两个点以外的点,都可以替换成这两个点使得答案不劣。枚举选择的其他点的 ws 数量的总和,暴力预处理小范围背包,就可以 $O(1)$ 回答。

Comments

No comments yet.