AT_abc261_e [ABC261E] Many Operations
题目描述
有一个变量 $X$,以及 $N$ 种可以改变 $X$ 值的操作。第 $i$ 个操作由整数对 $(T_i, A_i)$ 表示,含义如下:
- 当 $T_i=1$ 时,将 $X$ 的值替换为 $X\ \mathrm{and}\ A_i$。
- 当 $T_i=2$ 时,将 $X$ 的值替换为 $X\ \mathrm{or}\ A_i$。
- 当 $T_i=3$ 时,将 $X$ 的值替换为 $X\ \mathrm{xor}\ A_i$。
请从变量 $X$ 被初始化为值 $C$ 的状态开始,依次执行以下操作:
- 执行操作 $1$,输出操作后的 $X$ 的值。
- 接着,依次执行操作 $1,2$,输出操作后的 $X$ 的值。
- 接着,依次执行操作 $1,2,3$,输出操作后的 $X$ 的值。
- $\vdots$
- 接着,依次执行操作 $1,2,\ldots,N$,输出操作后的 $X$ 的值。
$\mathrm{and}$、$\mathrm{or}$、$\mathrm{xor}$ 的定义如下:对于非负整数 $A,B$,
- $A\ \mathrm{and}\ B$ 的二进制表示中,第 $2^k$ 位($k\geq 0$)为 $A,B$ 的二进制表示中第 $2^k$ 位都为 $1$ 时为 $1$,否则为 $0$。
- $A\ \mathrm{or}\ B$ 的二进制表示中,第 $2^k$ 位($k\geq 0$)为 $A,B$ 的二进制表示中第 $2^k$ 位至少有一个为 $1$ 时为 $1$,否则为 $0$。
- $A\ \mathrm{xor}\ B$ 的二进制表示中,第 $2^k$ 位($k\geq 0$)为 $A,B$ 的二进制表示中第 $2^k$ 位恰好有一个为 $1$ 时为 $1$,否则为 $0$。
例如,$3\ \mathrm{and}\ 5 = 1$,$3\ \mathrm{or}\ 5 = 7$,$3\ \mathrm{xor}\ 5 = 6$。
输入格式
输入按以下格式从标准输入读入。
> $N$ $C$
> $T_1$ $A_1$
> $T_2$ $A_2$
> $\vdots$
> $T_N$ $A_N$
输出格式
请按照题目要求输出 $N$ 行,每行一个整数。
说明/提示
### 数据范围
- $1 \leq N \leq 2\times 10^5$
- $1 \leq T_i \leq 3$
- $0 \leq A_i < 2^{30}$
- $0 \leq C < 2^{30}$
- 输入中的所有值均为整数。
### 样例解释 1
最初,$X$ 的值为 $10$。
- 执行操作 $1$ 后,$X$ 的值变为 $9$。
- 接着再执行操作 $1$,$X$ 的值变为 $10$,再执行操作 $2$,$X$ 的值变为 $15$。
- 接着再执行操作 $1$,$X$ 的值变为 $12$,再执行操作 $2$,$X$ 的值变为 $13$,再执行操作 $3$,$X$ 的值变为 $12$。
由 ChatGPT 4.1 翻译