随笔分类 - 图论----生成树
摘要:首先,有一个很暴力的nk的做法,就是对每种颜色分别开棵lct来维护。 实际上,有复杂度与k无关的做法。 感觉和bzoj4025二分图那个题的区别就在于这个题是边dfs线段树边拆分区间。
阅读全文
摘要:算法正确性证明: 1.最优性:最小边一定包含在生成树中。 2.合法性:一定不会构成环。如果存在环说明一个点的最小连边有两个,显然矛盾。 算法时间复杂度证明: 每执行一次算法,所有联通块的大小都至少为2,因此总联通块个数一定至少/2,因此最多只会执行log次。 算法实现: 1.为了避免边权相同的情况,
阅读全文
摘要:链接:http://uoj.ac/problem/176 对于这种边权难以直接维护的都直接考虑brouvka算法。 显然,我们要做的是实现一个可以查询&x最大的数据结构。 可以先对于所有权值建立一颗01 trie树。 考虑在trie树查询答案的过程,可以考虑一个从高位到低位的贪心。 当x的第i位为1
阅读全文