「みんなのプロコン」本選 オープンコンテスト:B - チーム決め
問題
https://atcoder.jp/contests/yahoo-procon2017-final-open/tasks/yahoo_procon2017_final_b
考え方
差の最大値を最小化したい。これはよくある典型問題で、最小化したい値 を二分探索することで最小値を求めることができる。問題を言い換えると
「差を とするとき、
を用いてペアを
つ以上作ることができるかどうか判定し、この
の最小値を求めよ」となる。
が決まれば、貪欲法で求めることができる。
はソートしておく。各
について
以上の最小の
とマッチングさせることが最善である。ただし
となる場合はマッチングできない。そのようにマッチングさせていったときにペアが
つ以上できるかどうか求めれば良い。
Submission #4277378 - 「みんなのプロコン」本選 オープンコンテスト
どこに着目して考察するべきだったか
最大値の最小化は二分探索で解けることは典型問題なので、ぱっと思いつけないといけない。
何がバグっていたか
得た知見(典型ポイント)
- 最大値の最小化(最小値の最大化)