ABC308 做题笔记 MatrixGroup · 2023-07-03 09:21:51 · 算法·理论 G 考虑用 Trie 维护。对于一个 Trie 结点: 如果它的两个儿子中至少有一个有两个值,那么最小的异或值一定是两个在同一个儿子中的值异或。取两个儿子的较小值即可。 否则,它的值就是两个儿子中唯一的值的异或。 --- 注意到由 Trie 的有序性,维护出的值一定是相邻两个数的异或。用 `std::set` 维护有序的数。 $O(Q\log Q)$。 ## Ex(补) [here](https://atcoder.jp/contests/abc308/editorial/6735)。