P4839 P哥的桶 题解
Description
维护一个序列,支持单点修改,区间查询最大异或和。
Solution
看到区间查询最大异或和,考虑线性基。
但是线性基并不资瓷区间查询怎么办嘞?
我们可以借助树套树的思想,给一个资瓷单点修改,区间查询的数据结构(比如线段树)里的每一个节点套一个线性基。
这样子就可以解决这个问题。
对于单点修改,给从根节点到单点的路径每个点都插入这个数。
对于区间查询,把所有答案插入到一个大的线性基里,在这个线性基里查最大异或和即可。
代码在链接里