#aBC176D. [ABC176D] Wizard in Maze
[ABC176D] Wizard in Maze
AT_abc176_d [ABC176D] Wizard in Maze
题目描述
有一个由 行 列组成的 的迷宫。
第 行第 列的格子 ,如果 为 #,则为墙,否则为道路。
有一位魔法使站在格子 。魔法使可以通过以下两种方式移动:
- 移动A:步行到当前格子上下左右相邻的道路格子。
- 移动B:以当前格子为中心,在 的范围内,通过魔法瞬移到任意道路格子。
无论哪种移动方式,都不能移动到迷宫外。
请问,最少需要使用多少次魔法瞬移才能到达格子 ?如果无法到达,则输出 。
输入格式
输入按以下格式从标准输入读入。
输出格式
输出到达 所需的最小魔法瞬移次数。如果无法到达,则输出 。
输入输出样例 #1
输入 #1
4 4
1 1
4 4
..#.
..#.
.#..
.#..
输出 #1
1
输入输出样例 #2
输入 #2
4 4
1 4
4 1
.##.
####
####
.##.
输出 #2
-1
输入输出样例 #3
输入 #3
4 4
2 2
3 3
....
....
....
....
输出 #3
0
输入输出样例 #4
输入 #4
4 5
1 2
2 5
#.###
####.
#..##
#..##
输出 #4
2
说明/提示
限制条件
- 仅为
#或. - 和 均为
.
样例解释 1
例如,可以先步行到 ,再从 用魔法瞬移到 ,这样魔法瞬移的最小次数为 。步行不能斜着走。
样例解释 2
无法从当前位置移动。
样例解释 3
不需要使用魔法瞬移。
由 ChatGPT 4.1 翻译