社区讨论

CSP-ST2赛后想到的64pts做法

题目总版参与者 3已保存回复 3

讨论操作

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

当前回复
3 条
当前快照
1 份
快照标识符
@mhiycg8y
此快照首次捕获于
2025/11/03 17:43
4 个月前
此快照最后确认于
2025/11/03 17:43
4 个月前
查看原帖
看到很多人发现k很小,枚举村庄选择的每一个集合,再跑Kruskal的做法,但性能瓶颈在Kruskal的排序,我想到了一种归并排序思想的64pts做法。

时间复杂度

2k(n+2.5nlog(2.5n)log(2)+m+2.5n+n)2^{k}\cdot\left(n+2.5n\cdot\frac{\log\left(2.5n\right)}{\log\left(2\right)}+m+2.5n+n\right)

做法

我们仍然需要枚举集合,合并边时,需要预处理城市边集的排序结果。这样只需要对村庄边排序,线性归并。这样就把 mlogmmlogm 降到了 nlognnlogn

回复

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

正在加载回复...