1 条题解
-
0
自动搬运
来自洛谷,原作者为

dottle
Cy@?g|^a搬运于
2025-08-24 22:23:20,当前版本为作者最后更新于2022-07-28 17:43:11,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
问题相当于求两个距离不大于 的数对的和的最大值。
将序列 个分一块,对于每个块内的最大值,钦定他们是最大值或次大值之一,然后求出他们周围 个数的最大值,用他们的和更新答案。
一开始的最大值使用单调队列求出。每次修改,只需要重新求出块内最大值,然后重新计算周围 块的信息。使用线段树维护区间最大值即可。
时间复杂度 。
证明,我们最担心出现这样的情况:答案是相邻两个块的两个非最大值的数匹配。设他们为 ,所在块的分别的最大值为 ,有 。考虑 和 而不是 匹配,所以 ; 与 而不是 匹配,所以 。矛盾。
- 1
信息
- ID
- 5725
- 时间
- 8000ms
- 内存
- 1024MiB
- 难度
- 6
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者