AT_cpsco2019_s3_e.Enumerate Xor Sum
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定一个长度为 N 的非负整数序列 A1,A2,…,AN。请你对每一个 k=1,2,…,N 进行以下操作:
- 计算 X=A1 xor A2 xor … xor Ak。
- 输出 (A1 xor X)+(A2 xor X)+…+(Ak xor X) 的结果。
需要特别注意的是,X 的值会随着 k 的变化而改变。
对于多个整数 c1,c2,…,cm 的异或计算,规则如下:
- 设计算结果为 X,
- 若 c1,c2,…,cm 中,在二进制表示中,第 2k 位是 1 的整数个数是奇数,则 X 的第 2k 位为 1;反之为 0。
输入格式
输入以以下格式给出:
N A1 A2 … AN
输出格式
对于每个 k=1,2,…,N,分别输出计算结果,每行一个。
输入输出样例
输入#1
3 7 5 3
输出#1
0 12 12
输入#2
7 12 42 61 31 34 53 17
输出#2
0 54 110 138 142 233 252
说明/提示
- 1≤N≤3×105
- 0≤Ai
- 所有输入均为整数。
示例解释 1
- 当 k=1 时,X=7,此时 A1 xor X=0。
- 当 k=2 时,X=7 xor 5=2,所以 A1 xor X=5,A2 xor X=7,总和为 12。
- 当 k=3 时,X=7 xor 5 xor 3=1,此时 A1 xor X=6,A2 xor X=4,A3 xor X=2,总和也为 12。
本翻译由 AI 自动生成
输入解题思路,AI测评打分。不知道怎么写?