P12829 「DLESS-2」XOR and Inversion
题目描述
给定 $0\sim 2^n-1$ 的排列 $p$,下标从 $0$ 开始,$q$ 次操作,每次操作形如以下两种中的一种:
- `1 x`: 将排列中的每个元素 $p_i$ 替换为 $p_i \oplus x$。
- `2 x`: 重新排列 $p$。对于每一个下标 $i$,操作后下标 $i$ 处的新元素是操作前下标 $i \oplus x$ 处的元素。
其中 $\oplus$ 表示按位异或运算。操作有后效性。
每次操作后,求出整个序列的逆序对数。
输入格式
本题有多组测试数据,第一行输入一个正整数 $T$,代表数据组数。
对于每组数据:
第一行输入两个数 $n,q$。
第二行输入 $2^n$ 个数,代表排列 $p$。
接下来 $q$ 行,每行两个数,代表一次操作,格式如题目描述所示。
输出格式
在每次操作后,输出一行一个数,代表答案。
说明/提示
对于所有数据,保证:
- $1\le T\le 10^5$
- $1\le 2^n,\sum 2^n\le 2^{20}$
- $1\le q,\sum q\le 10^6$
- $0\le x