CF1261F Xor-Set
题意:给出集合
记
模仿 Luogu3791 的思想,一个区间
这可以用线段树来实现。我们会得到
两个整区间异或所能产生的数是一个区间,那么可以两两枚举生成一系列区间,然后区间求并。
会有 std::sort
求并,复杂度为
进一步观察性质。
若两个区间分别钦定高
在线段树上,若某个点本身没有被覆盖,但是下面有被覆盖的点,则称该点为虚点。
两个虚点之间是不能贡献的,虚实,实实,都是可以贡献的。
由上面的结论,只需要考虑同层之间的贡献。生成区间被降至
实现:先存下
还需反过来再做一次。