对最开始为什么要插入 0 的一些解释
查看原帖
对最开始为什么要插入 0 的一些解释
511170
KaruAWA楼主2025/1/13 16:14

对于这个问题已经有一些帖子解答:请问为什么一定要先加入一个0hack,但我希望出现更加详细的解答,也方便解答后人的疑惑。

本人做法为可持久化 Trie,当查询为 [1,2][1,2] 时,实际上在 Trie 树上查询的两个点是一个不存在的点和 rt1rt_1。如果最开始没有插入 00 并且 a10a_1\ne 0 的话,Trie 树查询会误以为只能选 a1a_1 进行异或,但实际上选 p=1p=1 即前缀为 00 时也是合法的,因此最开始要插入一个 00 表示选 p=1p=1 也是合法的。

2025/1/13 16:14
加载中...