Official

G - Isosceles Trapezium Editorial by sugarrr


\(2\) 辺を等脚台形の平行な対辺にできるための必要十分条件は、以下の条件を全て満たすことです。

  • 辺の垂直二等分線が一致する
  • 辺の中点が一致しない

この考察から、以下の解法が思いつきます。

辺としてあり得るものを、

  • 辺の垂直二等分線
  • 辺の中点
  • 重みの和

を保存しつつ全列挙し、垂直二等分線で分類します。

垂直二等分線が一致する辺のグループを \(1\) つ取り出し、このグループ内での答えを考えます。
これは、重みの和が最大の辺を必ず使うとして良いので、答えを求めることができます。

以上で本問題を解くことができました。
計算量は垂直二等分線による分類がボトルネックとなり、\(O(N^2 \log N)\) です。


なお、実数型を使うときは十分計算誤差に注意しましょう。
本問題では全て整数型で計算した方が安全だと思います。

また、傾きが \(0\)\(\infty \) の辺 / 垂直二等分線があることにも注意しましょう。
場合分けをするか、または、直線を \(y=ax+b\) の形ではなく \(ax+by+c=0\) の形で扱うなどの方法があります。

posted:
last update: