Camelot の Bessie は困っています。Knights of Ni が守る森を通るには一株の低木を持参せねばなりません。時間が大切なので最速で見つけ届けます。
森の地図は普通の正方格子で、軸は $X$、$Y$ に平行。大きさ $W\times H$ ($1 \le W \le 1000$; $1 \le H \le 1000$)。
開始、騎士の唯一のマス、全低木、通行可否を示します。沼、崖、殺人ウサギで一部は不可。低木なしでは騎士マスを通れません。
地図通りに北東南西だけ(斜め不可)、隣のマスへ一日。
低木を得て届けられる保証があり、最速を求めます。
入力
第 $1$ 行:空白区切り整数 $W$、$H$。
第 $2..?$ 行:地図を行ごとに、最初は北西端、最後は南東端、各行の整数は西から東です。地図の新行は新入力行から始め、一入力行に空白区切り高々 40 整数。$W \le 40$ なら一入力行が完全な地図行、$W > 40$ なら複数入力行、最後以外は 40 個(最後は少なくてもよい)。一入力行は複数地図行を含みません。
地図の整数:
- 0:通行可能。
- 1:通行不可。
- 2:Bessie の開始。
- 3:Knights of Ni。
- 4:低木。
出力
第 $1$ 行:$D$、低木を取って届ける最小日数。
入出力例
入力 1
8 4
4 1 0 0 0 0 1 0
0 0 0 1 0 1 0 0
0 2 1 1 3 0 4 0
0 0 0 4 1 1 1 0
出力 1
11
注記
幅 $8$、高さ $4$。第三行から開始し騎士まで数マス。
N、W、N、S、E、E、N、E、E、S、S と進み、北西隅の低木を取り、東へ障害を迂回し南へ騎士に行けます。