BOZJ 3551&BZOJ 3545 kruskal重构树
这题是BZOJ 3545 的增强版。。。
强制在线。。。
对于原来普通的kruskal我们不是直接连边,而是构造新的一个点来保存这个点,然后这个点的权值就是原来的这条边的权值,然后就构造了一个新的树,对于这颗树,由于对边权排过序,所以这颗树是个堆,然后对这棵树进行dfs,求出dfs序,那么可用倍增求出第一个权值大于等于x的点,用dfs序+主席树求出k小值。
#include
#includ
原创
2017-08-02 21:26:07 ·
419 阅读 ·
0 评论