问题陈述
给定一个长度为N的非负整数序列A=(A1,A2,dots,AN)和一个正整数K。
找出对于所有满足1leqXileqN(1leqileqK)的K个正整数序列X=(X1,X2,dots,XK),计算displaystylesumi=1KAXi 的按位异或(bitwise XOR)值。
什么是按位异或(bitwise XOR)?
正整数A和B的按位异或AoplusB 定义如下:
- 当用二进制表示并将AoplusB写成二进制时,在第2k位(kgeq0)上的数字为1当且仅当在该位的A和B中有且仅有一个数字为1,否则为0。
例如,我们有 3oplus5=6(二进制表示为:011oplus101=110)。
一般地,k个非负整数p1,p2,p3,dots,pk的按位异或$(p_1 \\oplus p_2) \\oplus p_3 \\oplus \\dots \\oplus p_k$ 可以定义为 $(\\dots ((p_1 \\oplus p_2) \\oplus p_3) \\oplus \\dots \\oplus p_k)$。我们可以证明,该值与p1,p2,p3,dots,pk的顺序无关。
约束条件
- 1leqNleq1000
- 1leqKleq1012
- 0leqAileq1000
- 输入的所有值都是整数。
输入
输入以以下格式从标准输入给出:
N K
A1 A2 dots AN
输出
打印答案。
示例输入1
2 2
10 30
示例输出1
40
需要考虑四个序列:(X1,X2)=(1,1),(1,2),(2,1),(2,2),对应的AX1+AX2 分别为 20,40,40,60。因此,答案为 20oplus40oplus40oplus60=40。
示例输入2
4 10
0 0 0 0
示例输出2
0
示例输入3
11 998244353
314 159 265 358 979 323 846 264 338 327 950
示例输出3
236500026047