原题
题目大意
给出一串长为$2^n$的数字串,先将相邻的两个数字按位或,得到$2^{n-1}$的数字,再进行按位异或,反复进行这样的操作,直到只剩下唯一的数字。给出m个询问,每次将一个位置上的数字改成指定的数字,求最后得到的数字。
分析
这是一个单点修改区间求值的问题,可以使用线段树,只是合并的时候注意一下,需要对两个子区间的值或还是异或即可。
参考代码
|
|
吾生也有涯,而知也无涯
给出一串长为$2^n$的数字串,先将相邻的两个数字按位或,得到$2^{n-1}$的数字,再进行按位异或,反复进行这样的操作,直到只剩下唯一的数字。给出m个询问,每次将一个位置上的数字改成指定的数字,求最后得到的数字。
这是一个单点修改区间求值的问题,可以使用线段树,只是合并的时候注意一下,需要对两个子区间的值或还是异或即可。
|
|