問題
平面上に
個の点がある.4 つの点を選んで四角形を作るとき,その面積を最大化せよ.
解法
個の点の凸包上の点を反時計回りに
とします(
は凸包上の点の数).このとき,
の場合は,(凸包の 3 点) + (それ以外の 1 点) で四角形を作るのが最適です.よって,
かけてすべての候補を調べればよいです.
以下では,とします.このとき,面積が最大となるような四角形の頂点は全て凸包上にあります(凸包上に無い点を含むとき,適切に凸包上の点に変更することで面積を大きくできます).
四角形の対角線をなす点を で固定します.このとき,残りの二点の候補は
と
(
と
は同一視する)になるので,
の面積が最大になる点それぞれを
で調べればよいです.対角線の候補は
通りありますから,全体で
で解くことができました.
解法
対角線をなす 2 点 を固定したとき,
の面積はそれぞれ
に関して凸になっています.よって三分探索をすることにより,各対角線ごとに
で求めることができます.
解法
を固定します.このとき,
が最大となる
は
に関して単調増加になっています.よって尺取り法の要領により,各
に対して,すべての
に対する
の最大値を
で求めることができます.