QOJ.ac

QOJ

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

#22732. Ni 骑士

Statistics

Bessie 在 Camelot 遇到麻烦:必须穿过 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$。Bessie 从第三行出发,距骑士仅几格。

她可按 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.