摘要: 线性基+dfs树 我们先搞出dfs树,其实最终路径就是最初的路径和一些环异或。 环最多只有m-n+1,因为一共有m条边,然后有n-1条边在dfs树上,所以还剩m-n+1条边,都可以构成环。 所以dfs搞出环,线性基找最大值就可以了。 #include<bits/stdc++.h> using nam 阅读全文
posted @ 2017-07-02 18:00 19992147 阅读(288) 评论(0) 推荐(0) 编辑
摘要: trie+堆 跟超级钢琴是一个想法 我们先把每个数插进trie里,然后对于每个数查找异或第二小,因为第一小肯定是和自己。 然后就和超级钢琴一样,从堆里取出,插入第k+1小。trie是可以查找第k小的,只要维护一个size。 #include<bits/stdc++.h> using namespac 阅读全文
posted @ 2017-07-02 17:57 19992147 阅读(205) 评论(0) 推荐(0) 编辑