#ATarc137d. [ARC137D] Prefix XORs
[ARC137D] Prefix XORs
题目描述
给定一个长度为 的整数序列 ,以及一个整数 。
对于每个 ,请你求出对 恰好进行 次如下操作后 的值。
- 对于所有 (),将 的值替换为 。这个替换对所有 同时进行。
这里, 表示按位异或(bitwise XOR)运算。
按位异或(bitwise XOR)运算的定义如下:对于非负整数 , 的二进制表示中,每一位 ()上的数,如果 在该位上只有一个为 ,则结果为 ,否则为 。
例如,(二进制表示为:)。 一般来说, 个整数 的按位异或为 $(\dots((p\_1\oplus p\_2)\oplus p\_3)\oplus\dots\oplus p\_k)$,并且可以证明其结果与顺序无关。
输入格式
输入从标准输入读取,格式如下:
输出格式
请输出每个 的答案,空格分隔。
样例 1
输入
3 2
2 1 3
输出
0 1
样例 2
输入
10 12
721939838 337089195 171851101 1069204754 348295925 77134863 839878205 89360649 838712948 918594427
输出
716176219 480674244 678890528 642764255 259091950 663009497 942498522 584528336 364872846 145822575 392655861 844652404
说明/提示
限制条件
- 输入的所有值均为整数
样例解释 1
每次操作后, 的变化如下:
- 初始状态:
- 第 1 次操作后:
- 第 2 次操作后:
由 ChatGPT 4.1 翻译