#abc252h. [abc252_h]K-th beautiful Necklace

[abc252_h]K-th beautiful Necklace

問題文

NN 個の宝石があります。ii 番目の宝石は色が DiD_i で美しさが ViV_i です。
ここで、色は 1,2,ldots,C1,2,\\ldots,C のいずれかであり、どの色の宝石も少なくとも 11 個存在します。

NN 個の宝石から、色が相異なる CC 個の宝石を選んでネックレスを作ります。(選ぶ順番は考えません。) ネックレスの美しさは選んだ宝石の美しさのビットごとの rmXOR\\rm XOR となります。

全てのありえるネックレスの作り方のうち、美しさが KK 番目に大きいもののネックレスの美しさを求めてください。(同じ美しさの作り方が複数存在する場合、それらは全て数えます。)

ビットごとの rmXOR\\rm XOR とは 整数 A,BA, B のビットごとの rmXOR\\rm XORArmXORBA\\ {\\rm XOR}\\ B は、以下のように定義されます。

  • ArmXORBA\\ {\\rm XOR}\\ B を二進表記した際の 2k2^k (kgeq0k \\geq 0) の位の数は、A,BA, B を二進表記した際の 2k2^k の位の数のうち一方のみが 11 であれば 11、そうでなければ 00 である。

例えば、3rmXOR5=63\\ {\\rm XOR}\\ 5 = 6 となります (二進表記すると: 011rmXOR101=110011\\ {\\rm XOR}\\ 101 = 110)。

制約

  • 1leqCleqNleq701 \\leq C \\leq N \\leq 70
  • 1leqDileqC1 \\leq D_i \\leq C
  • 0leqVi<2600 \\leq V_i < 2^{60}
  • 1leqKleq10181 \\leq K \\leq 10^{18}
  • 少なくとも KK 種類のネックレスを作ることができる
  • 入力に含まれる値は全て整数である

入力

入力は以下の形式で標準入力から与えられる。

NN CC KK D1D_1 V1V_1 vdots\\vdots DND_N VNV_N

出力

答えを出力せよ。


入力例 1

4 2 3
2 4
2 6
1 2
1 3

出力例 1

5

以下のような 44 種類のネックレスを作ることができます。

  • 1,31,3 番目の宝石を選ぶ。ネックレスの美しさは 4rmXOR2=64\\ {\\rm XOR}\\ 2 =6 となる。
  • 1,41,4 番目の宝石を選ぶ。ネックレスの美しさは 4rmXOR3=74\\ {\\rm XOR}\\ 3 =7 となる。
  • 2,32,3 番目の宝石を選ぶ。ネックレスの美しさは 6rmXOR2=46\\ {\\rm XOR}\\ 2 =4 となる。
  • 2,42,4 番目の宝石を選ぶ。ネックレスの美しさは 6rmXOR3=56\\ {\\rm XOR}\\ 3 =5 となる。

よって美しさが 33 番目に大きいネックレスの美しさは 55 となります。


入力例 2

3 1 2
1 0
1 0
1 0

出力例 2

0

33 種類のネックレスを作ることができ、いずれも美しさは 00 です。


入力例 3

10 3 11
1 414213562373095048
1 732050807568877293
2 236067977499789696
2 449489742783178098
2 645751311064590590
2 828427124746190097
3 162277660168379331
3 316624790355399849
3 464101615137754587
3 605551275463989293

出力例 3

766842905529259824