当 i 在 [l_x, r_x] 时它的上一个端点在 [l_{x - 1} + 1, r_{x - 1}],考虑统一维护,那么现在要求找到所有 a \oplus x \ge v 的 x 加入集合 S,并且限制 S 中的数字的某一位为 0 / 1,找到集合 S 内数字 x 使得 a \oplus x 最小。
对一第一种操作在 trie 树上在对应的子树的根打个标记即可,表示以这个点为根的子树中都能往下走,对于第二种操作,可以打个懒标记,记 lazy_{x, d, 0 / 1} 表示以 x 为根的子树中是否要求第 d 位为 0 / 1,可以对 d 压位,变成记 lazy_{x, 0 / 1} 表示以 x 为根的子树中要求第 x 位为 0 / 1 的那些位置构成的集合,对于第三种操作就是 trie 树上的贪心了能走就走。