2102. 小强斗旺财II

单点时限: 2.0 sec

内存限制: 256 MB

在一个 N * M 的地图中,小强要从某一点出发,到达另一点。

‘S’‘E’分别代表我的起点和终点。‘.’代表可以走的格子,‘#’代表障碍。迷宫中有一些可怕的旺财,它们平时不会动。不过如果它们看到了小强,会瞬间冲过来把小强干掉。它们不动的时候有四种状态,‘^’‘v’ ‘<’‘>’,分别代表它们冲向上下左右四个方向。旺财不会透过障碍看到小强,不过它们可以通过迷宫中的一些镜子看到小强,镜子有两种状态,‘/’‘\’分别表示镜子的方向,比如说第一种镜子,那么它上面的‘v’可以看到它左面,下面的‘^’也可以看到右面的,反过来也是一样。幸运的是,小强可以在任意地点,转动任意一个镜子,改变它的状态,这需要花费一个时间单位。小强想尽快到达目的地,请你来帮小强算算最快小强要用多少时间单位到达目的地。假设小强四个方向行走,每走一步需要一个时间单位。

输入格式

多组数据。每组数据以 N, M(1<=N,M<=10,0<=N_Mirrors <= 10) 开头,下面 N 行描述地图。

输出格式

对于每组数据,输出最少时间。如果不能到达终点,输出‘poor_loner’。

样例

Input
5 5
S.v..
.....
.....
../..
....E
Output
9

3 人解决,6 人已尝试。

3 份提交通过,共有 30 份提交。

8.8 EMB 奖励。

创建: 16 年,7 月前.

修改: 7 年,3 月前.

最后提交: 4 年前.

来源: N/A

题目标签