この問題は得点についての二分探索を行うことで で解くことができます。
まず、 回の移動の軌跡で作れる多角形の面積の最小値は です。
( 辺の長さが の正方形のブロックを 個を繋げて、周の長さを 以上にすることはできないからです。)
また、 回の移動の途中で訪れた格子点の 座標の最大値が のときに、面積が最大となる多角形の つに、
原点を頂点の つとする、 座標に平行な辺の長さが 、周の長さが の長方形があります。
このとき、 座標に平行な辺の長さは となります。
のとき、長方形を原点を中心に 度回転させると 座標の最大値を にできるため、
最適ではありません。以下では すなわち、 の場合で考えます。
得点( 座標の最大値)が となるように移動するとき、上記より多角形の面積の最小値は 、最大値は となりますが、
実は、 以上、 以下の任意の整数の面積の多角形を作ることができます。
具体的には、長方形をベースにして、そこから減らしたい面積の分だけ内側を通ればよいです。
以下の図のように、周の長さが であり、 座標の最大値が であるような多角形の面積は
以上、 以下の任意の整数にすることができます。
(外枠の赤線が軌跡を表しています。)
つまり、この問題は 「 であるような最大の を求めよ」 と言い換えることができます。
「 である最大の 」は、 の範囲において が単調減少であるため、
二分探索を用いて求めることができます。