移动迷宫
题目描述
探险者被困在移动迷宫中。这个迷宫可以用一个
- 空地,用
.表示; - 固定的墙壁,用
#表示; - 会移动的墙壁,用
U、D、L、R表示,分别代表会向上、下、左、右四个方向移动的墙壁。
每天白天,探险者只能移动到上、下、左、右四个相邻格子的某一个,或者在原地停留。但是,不可以走进有墙壁的格子,也不可以走到方阵以外。
到了晚上,探险者会在原地休息,此时,所有会移动的墙壁将向其字母所代表的方向移动一格——如果有墙壁移动到探险者休息的位置,那么探险者将会窒息而亡,逃脱失败。如果墙壁移动前的位置上没有墙壁抵达且没有固定的墙壁,则该位置变为空地。到了白天,墙壁将停止移动,此时探险者再次启程。
此外,墙壁还有以下特性:
- 如果因为移动,两个墙壁到了同一个位置上,那么认为这个位置上有墙壁,并且下一晚上这两个墙壁仍然按照预定方式移动(如果是固定的墙壁则仍停在原地)。也就是说,墙壁重合不会对墙壁造成什么影响。
- 如果因为移动,墙壁移出了边界,那么它会瞬移到方阵的另一侧对应位置。也就是说,你可以认为方阵的上边界和下边界是相邻的,左边界和有边界是相邻的。例如,如果墙壁从
这个位置向上移动一格,它将移动到 ;如果墙壁从 这个位置向右移动一格,它将移动到 。
现在,给出探险者的初始位置
当然,探险者也可能无法抵达出口,此时请输出 -1。
输入格式
第一行五个正整数
接下来
输出格式
如果探险者可以抵达出口,则输出一个正整数,表示最小天数;否则输出 -1。
样例输入
5 1 1 2 5
..R##
UL#..
R...#
#....
DRRDR样例输出
7第一天往右走,第二天往下走,第三题往下走,第四天往右走,第五天往右走,第六天往上走,第七天往右走,抵达出口,因此共需
数据范围
本题共包含
| 测试点编号 | 特殊性质 | |
|---|---|---|
| - | ||
| 没有可移动的墙壁 | ||
| - | ||
| - |