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

irris
Good Luck.搬运于
2025-08-24 22:59:18,当前版本为作者最后更新于2024-05-09 23:41:18,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
Preface
deleted。
Solution
不失一般性,,否则我们把点按照 同余分成若干类,每一类是一个独立的问题。另注:我们需要忽视 的所有边 。
解决 。我们发现若初始权值为 的所有点的最终权值都是 ,这要求每个初始权值为 的点 都与至少一个初始权值在 内的点相连。我们显然可以 解决。
解决 是一般值的情况。考虑 最终全是 的充要条件是
- 联通;
- 每个 与 里更大的点直接有边;
- 每个 与 里更小的点直接有边。
忽视第一个条件,第二个条件我们对每个 找到最大的 ,这可以从小到大扫描 ,不断加入 的贡献,用并查集维护连续段解决;第三个条件同理。
接下来我们对每个 找到了如果第一个条件成立下的 和 ,于是这些点被划分成了三个部分:。
显然,如果 与 中其中 或 个部分联通,我们可以简单计算最终连通块的大小;否则我们不妨设 与 联通而不与 联通,但我们注意到这个时候最终连通块不一定仅仅是 ,也有可能是 与 内有边导致最终的最大连通块为 。判断两个区间内的点是否有边可以离线后二维偏序解决。
于是时间复杂度为 。
我们线性计算上面的每个部分。
- 对于每个 计算最大的 满足 的每个点 都与 间的一个点相连,对称同理
断言: 或 ,证明显然:若无 则有矛盾;若 依然有矛盾。那么枚举 的出边即可。
- 对于若干个 ,判断 与 之间是否有边
对于一条边 ,能够让 , 的点合法。由于 , 的单调性,这可以转化为有某个 使得 是合法的。这可以差分预处理。
于是时间复杂度为 。
另一个线性做法:欢迎报名月赛讲评。
- 1
信息
- ID
- 7810
- 时间
- 1000ms
- 内存
- 512MiB
- 难度
- 6
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者