题目描述
给定一个长度为 N 的非负整数序列 A=(A1,A2,…,AN),以及一个正整数 K。
满足 1≤Xi≤N (1≤i≤K) 的长度为 K 的正整数序列 X=(X1,X2,…,XK) 一共有 NK 种。请你计算所有这些序列对应的 i=1∑KAXi 的按位异或(bitwise XOR)。
按位异或(bitwise XOR)运算定义如下:对于非负整数 A,B,A⊕B 表示 A 和 B 的二进制表示下,每一位 2k(k≥0)的数,如果 A,B 在该位上只有一个为 1,则结果为 1,否则为 0。
例如,3⊕5=6(二进制表示为:011⊕101=110)。
一般地,k 个非负整数 p1,p2,p3,…,pk 的按位异或为 $(\dots((p_1 \oplus p_2) \oplus p_3)\oplus\dots\oplus p_k)$,并且可以证明其结果与顺序无关。
输入格式
输入以如下格式从标准输入读入:
N K A1 A2 … AN
输出格式
输出答案。
输入输出样例 #1
输入 #1
2 2
10 30
输出 #1
40
输入输出样例 #2
输入 #2
4 10
0 0 0 0
输出 #2
0
输入输出样例 #3
输入 #3
11 998244353
314 159 265 358 979 323 846 264 338 327 950
输出 #3
236500026047
说明/提示
限制条件
- 1≤N≤1000
- 1≤K≤1012
- 0≤Ai≤1000
- 所有输入均为整数
样例解释 1
X 可能的取值为 (X1,X2)=(1,1),(1,2),(2,1),(2,2) 共 4 种,每种对应的 AX1+AX2 分别为 20,40,40,60。因此答案为 20⊕40⊕40⊕60=40。