A90407.「THUPC 2017」小 L 的计算题 / Sum
省选/NOI-
通过率:0%
时间限制:3.00s
内存限制:512MB
题目描述
现有一个长度为 n (1≤n≤2×105) 的非负整数数组 {ai}。小 L 定义了一种神奇变换:
fk=i=1∑naik(mod998244353)
小 L 计划用变换生成的序列 f 做一些有趣的事情,但是他并不擅长算乘法,所以来找你帮忙,希望你能帮他尽快计算出 f1∼fn。
输入格式
输入包含多组数据。
输入的第一行包含一个整数 T (1≤T≤20), 表示数据组数。
接下来 2T 行,每两行代表一组测试数据。
每组数据的第一行包含一个整数 n,表示数组 {ai} 的长度。接下来一行 n 个整数,描述数组 {ai}。
保证输入的 ai 满足 0≤ai≤109。在一个测试文件中,保证有 ∑n≤4×105。
输出格式
我们不想让你输出过多的数。因此,令 ans=f1⊕f2⊕⋯⊕fn,其中 ⊕ 表示异或操作,在 C++ / Java / Python 中,它可以表示为 ^。
对每组数据,你需要输出一行一个整数,表示 ans。
输入输出样例
输入#1
2 3 2 3 3 5 1 2 3 4 5
输出#1
32 4675