P10856 【MX-X2-T5】「Cfz Round 4」Xor-Forces

题目背景

原题链接:。 --- ✿(。◕ᴗ◕。)✿

题目描述

给定一个长度为 $n=2^k$ 的数组 $a$,下标从 $0$ 开始,维护 $m$ 次操作: 1. 操作一:给定 $x$,设数列 $a'$ 满足 $a'_i=a_{i\oplus x}$,将 $a$ 修改为 $a'$。其中 $\oplus$ 表示按位异或运算。 2. 操作二:给定 $l,r$,查询 $a$ 的下标在 $l,r$ 之间的子数组有多少颜色段。**不保证 $\bm {l\le r}$,若 $\bm{l > r}$,请自行交换 $\bm{l,r}$。** 其中,一个极长的所有数都相等的子数组称为一个颜色段。 部分测试点要求强制在线。

输入格式

输出格式

说明/提示

**【样例解释 #1】** 此样例允许离线。 初始时 $a=[1,2,1,3,2,4,5,1]$。 $a$ 的下标在 $1,5$ 之间的子数组为 $[2,1,3,2,4]$,它的颜色段数为 $5$。 进行重排操作后,$a=[3,1,2,1,1,5,4,2]$。 $a$ 的下标在 $5,1$ 之间的子数组为 $[1,2,1,1,5]$,它的颜色段数为 $4$。 **【样例解释 #2】** 此样例除强制在线外,与样例 \#1 完全一致。 **【数据范围】** 对于所有测试数据,$T \in \{ 0, 1 \}$,$0\le k\le 18$,$n=2^k$,$1\le m\le 2\times 10^5$,$1\le a_i\le n$,$\mathit{op} \in \{ 1, 2 \}$,$0\le x,l,r < n$。 **本题采用捆绑测试。** - Subtask 1(15 points):$T=1$,$k\le 10$,$m\le 10^3$。 - Subtask 2(15 points):$T=1$,不存在操作一。 - Subtask 3(20 points):$T=1$,对于所有操作二,要么 $l=0,r=n-1$,要么 $l=n-1,r=0$。 - Subtask 4(20 points):$T=0$。 - Subtask 5(30 points):$T=1$。 **注意:Subtask 5 依赖前四个 Subtask,只有通过前四个 Subtask 才能尝试获得该 Subtask 的分数。**