#arc156d. [arc156_d]Xor Sum 5

[arc156_d]Xor Sum 5

问题陈述

给定一个长度为NN的非负整数序列A=(A1,A2,dots,AN)A=(A_1,A_2,\\dots,A_N)和一个正整数KK

找出对于所有满足1leqXileqN(1leqileqK)1 \\leq X_i \\leq N\\ (1\\leq i \\leq K)KK个正整数序列X=(X1,X2,dots,XK)X=(X_1,X_2,\\dots,X_K),计算displaystylesumi=1KAXi\\displaystyle \\sum_{i=1}^{K} A_{X_i} 的按位异或(bitwise XOR)值。

什么是按位异或(bitwise XOR)?

正整数AABB的按位异或AoplusBA \\oplus B 定义如下:

  • 当用二进制表示并将AoplusBA \\oplus B写成二进制时,在第2k2^k位(kgeq0k \\geq 0)上的数字为11当且仅当在该位的AABB中有且仅有一个数字为11,否则为00

例如,我们有 3oplus5=63 \\oplus 5 = 6(二进制表示为:011oplus101=110011 \\oplus 101 = 110)。
一般地,kk个非负整数p1,p2,p3,dots,pkp_1, p_2, p_3, \\dots, p_k的按位异或$(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,pkp_1, p_2, p_3, \\dots, p_k的顺序无关。

约束条件

  • 1leqNleq10001 \\leq N \\leq 1000
  • 1leqKleq10121 \\leq K \\leq 10^{12}
  • 0leqAileq10000 \\leq A_i \\leq 1000
  • 输入的所有值都是整数。

输入

输入以以下格式从标准输入给出:

NN KK A1A_1 A2A_2 dots\\dots ANA_N

输出

打印答案。


示例输入1

2 2
10 30

示例输出1

40

需要考虑四个序列:(X1,X2)=(1,1),(1,2),(2,1),(2,2)(X_1,X_2)=(1,1),(1,2),(2,1),(2,2),对应的AX1+AX2A_{X_1}+A_{X_2} 分别为 20,40,40,6020,40,40,60。因此,答案为 20oplus40oplus40oplus60=4020 \\oplus 40 \\oplus 40 \\oplus 60=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