AT_cpsco2019_s3_e Enumerate Xor Sum
题目描述
给定一个长度为 $N$ 的非负整数序列 $A_1, A_2, \ldots, A_N$。请你对每一个 $k = 1, 2, \ldots, N$ 进行以下操作:
1. 计算 $X = A_1 \ {\rm xor} \ A_2 \ {\rm xor} \ \ldots \ {\rm xor} \ A_k$。
2. 输出 $(A_1 \ {\rm xor} \ X) + (A_2 \ {\rm xor} \ X) + \ldots + (A_k \ {\rm xor} \ X)$ 的结果。
需要特别注意的是,$X$ 的值会随着 $k$ 的变化而改变。
对于多个整数 $c_1, c_2, \ldots, c_m$ 的异或计算,规则如下:
- 设计算结果为 $X$,
- 若 $c_1, c_2, \ldots, c_m$ 中,在二进制表示中,第 $2^k$ 位是 $1$ 的整数个数是奇数,则 $X$ 的第 $2^k$ 位为 $1$;反之为 $0$。
输入格式
输入以以下格式给出:
> $N$ $A_1$ $A_2$ $\ldots$ $A_N$
输出格式
对于每个 $k = 1, 2, \ldots, N$,分别输出计算结果,每行一个。
说明/提示
- $1 \le N \le 3 \times 10^5$
- $0 \le A_i$
- 所有输入均为整数。
### 示例解释 1
- 当 $k = 1$ 时,$X = 7$,此时 $A_1 \ {\rm xor} \ X = 0$。
- 当 $k = 2$ 时,$X = 7 \ {\rm xor} \ 5 = 2$,所以 $A_1 \ {\rm xor} \ X = 5$,$A_2 \ {\rm xor} \ X = 7$,总和为 $12$。
- 当 $k = 3$ 时,$X = 7 \ {\rm xor} \ 5 \ {\rm xor} \ 3 = 1$,此时 $A_1 \ {\rm xor} \ X = 6$,$A_2 \ {\rm xor} \ X = 4$,$A_3 \ {\rm xor} \ X = 2$,总和也为 $12$。
**本翻译由 AI 自动生成**