给你一个数,在一段区间内找到另一个数,使得他们的异或最大: trie树上存储每个数的二进制位,查询时贪心查询能让当前高位取得1的位置: 实际上是一个求前缀和的思想.每个数都开一个trie树浪费空间,当前建树的时候基本是转移前面的树: 首先设当前二进制位为d,将前一棵树的d^1直接转移(因为以后也用不到这一半),然后再递归转移d 最后更新当前树的当前位置的树的大小.(方便以后查询): 查询时,设给出的数当前位为d,我们要找到一个d^1的数才可以使得数更大,如果siz[r]-siz[l]>0说明存在…