#506. 城市交通
城市交通
问题背景
X城市的交通十分不便利,城市可被看作一个 大小的矩阵。 手持该城市的地图,地图以特定格式描述了城市内的通行规则,他需要尽快从当前位置赶到机场,因此需要找到从起点到机场的最短路径。
问题描述
X城市的地图是一个 行、 列的矩阵:
- 地图中 所在的格子用
S表示,机场所在的格子用T表示,其余可通行格子用空格表示; - 左右相邻的两个格子若无法通行,用
|表示;上下相邻的两个格子若无法通行,用-表示;+表示格子的四个角; - 题目保证城市 X 最外圈无法通行。
请你帮助 计算到达机场最少需要走过的格子数(包括起点S和终点T)。若无法到达机场T,则输出"FXZ Got lost...TAT"。
输入格式
第一行输入两个整数 ,表示 城市的大小( 行 列的格子)。 接下来 行,每行包含 个字符,描述 手中的地图。 题目保证 和 都有且仅有一个。
输出格式
若 能到达机场,输出最少需要经过的格子数;否则输出FXZ Got lost...TAT(不包含双引号)。
输入样例 1
4 3
+-+-+-+
|S| | |
+ +-+-+
| | | |
+ +-+-+
| |T |
+ +-+ +
| |
+-+-+-+
输出样例 1
8
输入样例 2
3 3
+-+-+-+
|S| |
+ + +-+
| | |T|
+ + +-+
| | |
+-+-+-+
输出样例 2
FXZ Got lost...TAT
说明
对于第一个样例,链接:TRDD所在的位置为(1, 1), 机场的位置为(3, 2)路线为(1, 1) -> (2, 1) -> (3, 1) -> (4, 1) -> (4,2) -> (4,3) -> (3,3) ->(3,2) 共8个格子
对于第二个样例,无法从S到达T。
评测数据规模
对于所有评测数据,。