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

摸鱼酱
喜欢就值得。搬运于
2025-08-24 22:33:06,当前版本为作者最后更新于2021-08-10 15:37:55,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
给定序列 ,生成一张 个点的无向完全图, 之间的边权为 ,求最小生成树。
,。
朴素地找边显然有 条,考虑实际是否真的有这么多有效边。
首先对于所有权值去重,相同权值的默认是同一个点,记 。
对于每一个权值 ,我们可以去枚举它的倍数 ,找到值在 内最小的数,记为一条有效边,特殊地, 时范围为 。
因为值域很小,找数这个操作可以放到桶里,从后往前扫一遍得到。
于是这样会找到 条边,找到之后桶排做 Kruskal,就可以做到 ,如果只有这些有效边,复杂度和空间都是可以接受的。
考虑如何证明这样一定不劣,假设一个点 连向的不是某个倍数区间里第一个数 ,而是靠后一些的 ,显然有 ,我们考虑把 改为 ,新的花费是 ,原本的花费是 ,设 ,则有原来的花费为 ,新的花费为 ,显然有前者不小于后者,于是完成了证明。
- 1
信息
- ID
- 7076
- 时间
- 5000ms
- 内存
- 800MiB
- 难度
- 5
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者