Processing math: 100%

[BZOJ 2115][Wc2011]Xor

danihao123 posted @ 2018年2月28日 10:09 in 题解 with tags bzoj wc 线性基 DFS树 , 740 阅读
转载请注明出处:http://danihao123.is-programmer.com/

这个可以有啊(赞赏)!

我们可以发现如果两点间如果有多条路径,那么任意两条路径在一个简单环里。

然后我们还发现,如果说是一个路径,一个环和这个路径有交边,那么走这个环走很多次没有意义(其实相当于从环的两边选一边走)。

然后这样可以发现,用1n的路径来异或一个环,可以得到新的一条1n的路径。

这样我们可以用DFS树来求出图上所有简单环的异或和,求出其线性基,然后随便找条1n的路径,问题就变成了求这条路径和那个线性基的异或和最大是多少。然后这就是线性基乱搞好了……

代码:


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter