#DR7. 肆叶的迷宫冒险

肆叶的迷宫冒险

肆叶在玩一个PC端的迷宫游戏,其规则如下: 地图分为x轴与y轴,向上移动y坐标增加,向右移动x坐标增加。 迷宫的大小为 n*m,即 n 行 m 列,从 (1,1) 到 (n,m)。 地图有 num 个障碍物,如图中红色 X 号的位置。 玩家可以向上下左右四个方向移动。 玩家 不可进入障碍物位置,也 不可以走到地图外面
键位规定: W:向上移动 S:向下移动 A:向左移动 D:向右移动
b338284ac07a67f66ef2e3fbbbe646fa


已知肆叶初始在 (a,b),共按下 q 次键盘,请推断每次按键后的坐标。

输入格式:

第 1 行:n m a b ------ 地图大小与初始坐标(保证合法)。 第 2 行:num ------ 障碍物数量。 接下来 num 行:每行一对 (x,y) ------ (保证输入数据在地图内)代表障碍物坐标位置。 下一行:q ------ 按键次数。 之后 q 行:每行一个字符。

输出格式:

如果本次按下键盘的键位为移动键,则称本次移动为有效移动。 在一行中输出"Move to (x,y)"。 如果是移动到了障碍物上或是地图外,则称这次移动为非法移动,不会进行本次移动。 在第一行中输出"Can not move to (x,y)",其中(x,y)代表非法移动的终点。 再在第二行中输出"Now:(x,y)",其中(x,y)表示现在所在的坐标。 如果本次按下的键位不是移动键,则称本次移动为无效移动。 在一行中输出"No movement at (x,y)",其中(x,y)表示现在的坐标。

输入样例 1:

5 5 1 1
2
2 2
1 3
7
W
S
S
D
A
A
A

输出样例 1:

Move to (1,2)
Move to (1,1)
Can not move to (1,0)
Now:(1,1)
Move to (2,1)
Move to (1,1)
Can not move to (0,1)
Now:(1,1)
Can not move to (0,1)
Now:(1,1)

输入样例 2:

4 4 1 1
2
1 2
3 4
8
W
/
S
R
A
X
D
Y

输出样例 2:

Can not move to (1,2)
Now:(1,1)
No movement at (1,1)
Can not move to (1,0)
Now:(1,1)
No movement at (1,1)
Can not move to (0,1)
Now:(1,1)
No movement at (1,1)
Move to (2,1)
No movement at (2,1)

数据范围

  • 1 ≤ a,b ≤ n,m ≤ 500
  • 1 ≤ num ≤ 50
  • 1 ≤ q ≤ 20000