QOJ.ac

QOJ

Time Limit: 2 s Memory Limit: 256 MB Total points: 100

#22732. Ni の騎士

Statistics

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 と進み、北西隅の低木を取り、東へ障害を迂回し南へ騎士に行けます。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.