No.232

まずは目的地までの最短手数 を考える. これは右上移動をできるだけ行い, 残りは右または上に進めばいいので,

となる. これが 以上ならば到達できない.

残り手数 をどこかで時間稼ぎする.

スタートから上移動+下移動で2手稼げるので, これを繰り返せば残りは高々1手となる.

残りの1手は, 最短手順に右上移動が1手でもあればそのうちの1手を右移動+上移動に置き換えれば1手稼げる. そうでないときは, たとえば右移動だけの場合はそのうちの1手を右上移動+下移動に置き換えれば1手稼げる.

なお, 目的地が原点の場合は, ならば到達できない. そうでない場合は, が偶数ならば上移動+下移動を繰り返せばよく, が奇数ならば最初の3手を上移動+右下移動+左移動にして後は上移動+下移動を繰り返せばいい.