[ARC156D] Xor Sum 5

题意翻译

给定 $n$ 个数的数列 $a$ 和一个整数 $k$。 对于所有长度为 $k$,值域为 $[1,n]$ 的数列 $p$,求出 $\sum _{i=1}^{k} a_{p_i}$ 的异或和。

题目描述

[problemUrl]: https://atcoder.jp/contests/arc156/tasks/arc156_d 長さ $ N $ の非負整数列 $ A=(A_1,A_2,\dots,A_N) $ 、および正整数 $ K $ が与えられます。 $ 1\ \leq\ X_i\ \leq\ N\ (1\leq\ i\ \leq\ K) $ を満たす長さ $ K $ の正整数列 $ X=(X_1,X_2,\dots,X_K) $ は $ N^K $ 通り考えられますが、それらすべてに対する $ \displaystyle\ \sum_{i=1}^{K}\ A_{X_i} $ のビット単位 $ \mathrm{XOR} $ を求めてください。 ビット単位 $ \mathrm{XOR} $ 演算とは 非負整数 $ A,\ B $ のビット単位 $ \mathrm{XOR} $ 、$ A\ \oplus\ B $ は、以下のように定義されます。 - $ A\ \oplus\ B $ を二進表記した際の $ 2^k $ ($ k\ \geq\ 0 $) の位の数は、$ A,\ B $ を二進表記した際の $ 2^k $ の位の数のうち一方のみが $ 1 $ であれば $ 1 $、そうでなければ $ 0 $ である。 例えば、$ 3\ \oplus\ 5\ =\ 6 $ となります (二進表記すると: $ 011\ \oplus\ 101\ =\ 110 $)。 一般に $ k $ 個の非負整数 $ p_1,\ p_2,\ p_3,\ \dots,\ p_k $ のビット単位 $ \mathrm{XOR} $ は $ (\dots\ ((p_1\ \oplus\ p_2)\ \oplus\ p_3)\ \oplus\ \dots\ \oplus\ p_k) $ と定義され、これは $ p_1,\ p_2,\ p_3,\ \dots,\ p_k $ の順番によらないことが証明できます。

输入输出格式

输入格式


入力は以下の形式で標準入力から与えられる。 > $ N $ $ K $ $ A_1 $ $ A_2 $ $ \dots $ $ A_N $

输出格式


答えを出力せよ。

输入输出样例

输入样例 #1

2 2
10 30

输出样例 #1

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

说明

### 制約 - $ 1\ \leq\ N\ \leq\ 1000 $ - $ 1\ \leq\ K\ \leq\ 10^{12} $ - $ 0\ \leq\ A_i\ \leq\ 1000 $ - 与えられる入力はすべて整数 ### Sample Explanation 1 $ X $ として考えられるのは $ (X_1,X_2)=(1,1),(1,2),(2,1),(2,2) $ の $ 4 $ 通りであり、それぞれに対する $ A_{X_1}+A_{X_2} $ は $ 20,40,40,60 $ です。よって答えは $ 20\ \oplus\ 40\ \oplus\ 40\ \oplus\ 60=40 $ となります。