P11872 [威海市赛 2024] 异或盒子 1
题目背景
“诶?我当数据结构?真的假的?”
题目描述
小威有一个神奇的异或盒子!
盒子中有 $n$ 个元素,每个元素都有一个权值 $v_i$。每当小威念出神秘咒语之时,盒子可以告诉小威,盒子中元素的异或和是多少。
有一天,这个盒子被小海发现了。小海问小威:“我能不能向盒子提 $q$ 个要求?我希望改变盒子中某一个元素的权值,或者让所有元素的权值都 $+1$。除此之外,我还想念你那个神秘的咒语!”“好啊,没问题啊。”
你可能想问,“那我呢?”
你就是这个神奇的异或盒子!现在请你满足小海的要求吧!
输入格式
第一行包含两个整数 $n$ 和 $q$,含义如上所述。
第二行包含 $n$ 个整数 $v_i$。
接下来 $q$ 行,每行首先输入一个整数 $op$,表示要求种类:
- $op = 0$:输入格式为 $op\ x\ p$,表示将 $v_x$ 更改为 $p$;
- $op = 1$:输入格式为 $op$,表示将所有的元素权值 $+1$;
- $op = 2$:输入格式为 $op$,表示查询所有元素的异或和。
对于所有数据,满足:$1 \leq n, q \leq 10^5$,$0 \leq p, v_i \leq 10^5$,$1 \leq x \leq n$。
输出格式
对于 $op = 2$ 时,输出一个整数表示所有元素的异或和。