#5015. 【BFS】 营救计划
【BFS】 营救计划
题目描述
在一个n∗m的迷宫里,有一个萌新被困住了,你作为一个久经码场的战士,决定去营救萌新。地图中还会有一些守卫,你必须打败守卫才能通过守卫所在的位置,打败守卫需要花费1分钟,移动一步需要花费一分钟,每次你只能往上下左右某个方向移动一步。问你最少需要花费多少时间才能救到萌新。
输入格式
第一行输入两个整数 n,m 接下来n行每行输入m个字符
'#'代表障碍物,无法直接通过
'.'代表空地,可以直接通过
'G'代表守卫,你需要打败他才能通过
'M'代表萌新所在的位置
'@'表示你所在的位置
输出格式
如果可以营救到萌新,就输出最少需要花费的分钟数
如果不可以,输出“You can't save Mengxin”
样例 #1
样例输入 #1
7 8
#.#####.
#.M#..@.
#..#G...
..#..#.#
#...##..
.#......
........
样例输出 #1
13
提示
1<=n,m<=200,输入保证合法
Related
In following homework: