atcoder#ABC252H. [ABC252Ex] K-th beautiful Necklace
[ABC252Ex] K-th beautiful Necklace
题目描述
個の宝石があります。 番目の宝石は色が で美しさが です。
ここで、色は のいずれかであり、どの色の宝石も少なくとも 個存在します。
個の宝石から、色が相異なる 個の宝石を選んでネックレスを作ります。(選ぶ順番は考えません。) ネックレスの美しさは選んだ宝石の美しさのビットごとの となります。
全てのありえるネックレスの作り方のうち、美しさが 番目に大きいもののネックレスの美しさを求めてください。(同じ美しさの作り方が複数存在する場合、それらは全て数えます。)
ビットごとの とは 整数 のビットごとの 、 は、以下のように定義されます。 - を二進表記した際の () の位の数は、 を二進表記した際の の位の数のうち一方のみが であれば 、そうでなければ である。
例えば、 となります (二進表記すると: )。
输入格式
入力は以下の形式で標準入力から与えられる。
输出格式
答えを出力せよ。
题目大意
给定 个珠子,每个珠子的颜色为 ,权值为 。颜色共有 种,且保证每种颜色至少有一颗珠子。你需要从 个珠子种选择 个颜色不同的珠子串成一条项链,其权值为其中所有珠子权值的异或和。你需要输出权值第 大的项链的权值。只要选取的珠子不同,即使权值相同也算不同项链。数据保证可能构成的项链数不小于 。
4 2 3
2 4
2 6
1 2
1 3
5
3 1 2
1 0
1 0
1 0
0
10 3 11
1 414213562373095048
1 732050807568877293
2 236067977499789696
2 449489742783178098
2 645751311064590590
2 828427124746190097
3 162277660168379331
3 316624790355399849
3 464101615137754587
3 605551275463989293
766842905529259824
提示
制約
- 少なくとも 種類のネックレスを作ることができる
- 入力に含まれる値は全て整数である
Sample Explanation 1
以下のような 種類のネックレスを作ることができます。 - 番目の宝石を選ぶ。ネックレスの美しさは となる。 - 番目の宝石を選ぶ。ネックレスの美しさは となる。 - 番目の宝石を選ぶ。ネックレスの美しさは となる。 - 番目の宝石を選ぶ。ネックレスの美しさは となる。 よって美しさが 番目に大きいネックレスの美しさは となります。
Sample Explanation 2
種類のネックレスを作ることができ、いずれも美しさは です。