long double なら通るみたいなツイートいくつか見かけたんですがなぜこれは通らないのでしょうか? ld = long double です atcoder.jp/contests/abc30…
2
0
2
1K
0
@yagipop_atcoder sortの比較関数についてx.second > y.secondとしているのが原因だと思います。成功率が同じ場合昇順に並び替えないといけませんが、この場合だとx.second == y.secondの時のものが昇順に並ばないと思います。(サンプル2はたまたま通っていますが、そうならないケースがありそうです)
@yagipop_atcoder 解説にも書いてある、C++のsortは安定ソートでないため順序が同率だと元の順番が変わる可能性がある、というやつじゃないですか? 比較関数の部分を return x.second > y.second || (x.second==y.second && x.first < y.first) にするかstable_sortを使うかで通ると思います