该文被密码保护。 阅读全文
posted @ 2019-01-18 18:29 Creed-qwq 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 算法正确性证明: 1.最优性:最小边一定包含在生成树中。 2.合法性:一定不会构成环。如果存在环说明一个点的最小连边有两个,显然矛盾。 算法时间复杂度证明: 每执行一次算法,所有联通块的大小都至少为2,因此总联通块个数一定至少/2,因此最多只会执行log次。 算法实现: 1.为了避免边权相同的情况, 阅读全文
posted @ 2019-01-18 00:14 Creed-qwq 阅读(1226) 评论(0) 推荐(1) 编辑
摘要: 链接:http://uoj.ac/problem/176 对于这种边权难以直接维护的都直接考虑brouvka算法。 显然,我们要做的是实现一个可以查询&x最大的数据结构。 可以先对于所有权值建立一颗01 trie树。 考虑在trie树查询答案的过程,可以考虑一个从高位到低位的贪心。 当x的第i位为1 阅读全文
posted @ 2019-01-18 00:05 Creed-qwq 阅读(401) 评论(0) 推荐(0) 编辑