2019-9-13做题记录

1、【BZOJ2115】Xor(线性基)

给一个无向联通图,边有边权,求从$1$到$n$异或和最大的路径。

$yyb$的做法和我的一样,然而我不会证明。

$dfs$的过程中,分别考虑简单单位环(返祖边所在的环)的贡献和路的贡献。环的贡献扔到线性基里,然后把$1~n$的路径的贡献丢到线性基里求最大就行了。

2、【BZOJ4568】幸运数字(线性基,ST表)

神仙操作:合并线性基。暴力,复杂度两个$log$

然后用$ST$表搭配$LCA$查询。(注意,不要在$LCA$的过程中跑,因为可以重叠的,这样会多个$log$)。

3、【BZOJ3105】新Nim游戏(线性基)

我连$Nim$游戏都不会,还给我出新$Nim$游戏。

先$yy$一下$Nim$游戏:有一些火柴堆,每堆都有若干根火柴(不同堆的火柴数量可以不同)。两个游戏者轮流操作,每次可以选一个火柴堆拿走若干根火柴。可以只拿一根,也可以拿走整堆火柴,但不能同时从超过一堆火柴中拿。拿走最后一根火柴的游戏者胜利。

当火柴堆的异或和为$0$时,后手必胜,反之,先手必胜。

那这道题就是很显然,就是让你选择和尽可能小的数,使得剩下的数的任意子集的异或和不为$0$,从大到小排序之后,依次插入线性基中贪心的选即可。

4、

猜你喜欢

转载自www.cnblogs.com/shxnb666/p/11517055.html