其他分享
首页 > 其他分享> > CF842D题解

CF842D题解

作者:互联网

题目描述

给你一个长度为 \(n(n\leq 3e5)\) 整数数列,对于每一次询问,我们将序列中每一个元素都异或上一个数字 \(x\) 然后查询序列 \(mex\) ,其中 \(mex\) 定义为最小没有出现的自然数。

分析

我们先想想如何快速求一个序列的 \(mex\) ,一种可能很常见的方法是建立一颗权值线段树,然后对于每一个值域,如果左儿子中数的数量等于区间长度,那么说明答案在右子树中,否则就在左子树中。

但是这种做法不能很好的处理异或,那我们怎么办呢?处理异或的问题,我们通常采用的是01trie,那么我们如何使用01trie呢?首先我们和上面不带修改的方法类似,对于每一个节点

标签:01trie,题解,我们,异或,序列,CF842D,树中,mex
来源: https://www.cnblogs.com/kevin07/p/15585596.html