社区讨论

求证明/证伪该结论

P14362[CSP-S 2025] 道路修复参与者 2已保存回复 7

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
7 条
当前快照
1 份
快照标识符
@mi0v89t7
此快照首次捕获于
2025/11/16 06:35
3 个月前
此快照最后确认于
2025/11/17 09:11
3 个月前
查看原帖
80pts: 在暴力枚举乡镇选与不选时的生成树时,不将乡镇视为一个单独的点,而是去掉原有生成树的边,乡镇到每个城市的距离 aia_i 视为城市的点权,建立一个独立的、任意两点之间直接边权为两端点权和的完全图,并在这张完全图上先跑一遍生成树。
然后注意到生成树性质,完全图上的每个点权至少都会产生一次贡献,其余 n2n−2 次贡献取决于生成树形态。于是以点权最小的点为根,向每一个其他点连一条边,形成一张菊花图,此时生成树大小为 (n2)×min(ai)+ai(n-2)\times \min(a_i)+\sum a_i。于是做到了 O(n)O(n)
最后把这两个最小生成树合在一起,正常跑一遍, O(nlogn)O(nlogn)
赛时没有过第三个大样例。
可以证明这就是最小生成树吗?
(笑话:调试的时候改了 freopen 最后忘往回改了,遂保龄)

回复

7 条回复,欢迎继续交流。

正在加载回复...