Skip to content

一种用线段树实现 01 Trie 的思路

前提是值域允许,而且还是 log2 的。

比如给定序列 a1n,每次询问给出 x,求 max(xxorai)

可以使用 01 Trie,从高到低位尽量往不同的方向走。

但也可以枚举每一位,求出满足 ya1n 且能够让 xxory 最大的 y

a 全部丢进值域线段树,如确定到 i - - - 这一位(圆点是已经确认的高位),根据贪心,如果存在一个数 (ixor1)000(ixor1)111,那么 y 的这一位就可以取 ixor1,而这就是一个区间查询的操作。

然后就没了,同理可以用主席树爆炒可持久化 01 Trie,P3293 [SCOI2016] 美味

最近更新