题目描述
長さ N の非負整数列 A=(A1,A2,…,AN) 、および正整数 K が与えられます。
1 ≤ Xi ≤ N (1≤ i ≤ K) を満たす長さ K の正整数列 X=(X1,X2,…,XK) は NK 通り考えられますが、それらすべてに対する i=1∑K AXi のビット単位 XOR を求めてください。
ビット単位 XOR 演算とは 非負整数 A, B のビット単位 XOR 、A ⊕ B は、以下のように定義されます。
- A ⊕ B を二進表記した際の 2k (k ≥ 0) の位の数は、A, B を二進表記した際の 2k の位の数のうち一方のみが 1 であれば 1、そうでなければ 0 である。
例えば、3 ⊕ 5 = 6 となります (二進表記すると: 011 ⊕ 101 = 110)。
一般に k 個の非負整数 p1, p2, p3, …, pk のビット単位 XOR は $ (\dots\ ((p_1\ \oplus\ p_2)\ \oplus\ p_3)\ \oplus\ \dots\ \oplus\ p_k) $ と定義され、これは p1, p2, p3, …, pk の順番によらないことが証明できます。
输入格式
入力は以下の形式で標準入力から与えられる。
N K A1 A2 … AN
输出格式
答えを出力せよ。
题目大意
给定 n 个数的数列 a 和一个整数 k。
对于所有长度为 k,值域为 [1,n] 的数列 p,求出 ∑i=1kapi 的异或和。
2 2
10 30
40
4 10
0 0 0 0
0
11 998244353
314 159 265 358 979 323 846 264 338 327 950
236500026047
提示
制約
- 1 ≤ N ≤ 1000
- 1 ≤ K ≤ 1012
- 0 ≤ Ai ≤ 1000
- 与えられる入力はすべて整数
Sample Explanation 1
X として考えられるのは (X1,X2)=(1,1),(1,2),(2,1),(2,2) の 4 通りであり、それぞれに対する AX1+AX2 は 20,40,40,60 です。よって答えは 20 ⊕ 40 ⊕ 40 ⊕ 60=40 となります。