P4839 P哥的桶 题解

Description

维护一个序列,支持单点修改,区间查询最大异或和。

Solution

看到区间查询最大异或和,考虑线性基。

但是线性基并不资瓷区间查询怎么办嘞?

我们可以借助树套树的思想,给一个资瓷单点修改,区间查询的数据结构(比如线段树)里的每一个节点套一个线性基。

这样子就可以解决这个问题。

对于单点修改,给从根节点到单点的路径每个点都插入这个数。

对于区间查询,把所有答案插入到一个大的线性基里,在这个线性基里查最大异或和即可。

代码在链接里

posted @ 2021-04-08 19:44  feicheng  阅读(22)  评论(0编辑  收藏  举报