题目背景
English statement. You must submit your code at the Chinese version of the statement.
小 F 来到了迷雾之森。
题目描述
整个迷雾之森可以由一个 n×m 的矩阵表示,X
代表有迷雾的地块,.
代表空地。从上到下给每行标号为 1,2,⋯,n,从左到右给每列标号为 1,2,⋯,m。除此之外,还会给定一个迷雾系数 k。
小 F 进行了 q 次移动。第 i 次移动由一个字符 ci,两个数字 ai,bi 描述,更具体地说:
- ci 为
U
时,向上走 ai 步。
- ci 为
D
时,向下走 ai 步。
- ci 为
L
时,向左走 ai 步。
- ci 为
R
时,向右走 ai 步。
当然,小 F 不可以走出这个 n×m 的范围。换句话说,若走到边界处,立即结束此次移动。
若第 i 次移动结束后小 F 停留在有迷雾的地块上,则小 F 会对从 i+k 开始,之后每 k 次移动的 c 进行一次修改,一共修改 bi 个移动。也就是说,小 F 会对 ci+k,ci+2×k,⋯,ci+bi×k 进行一次修改(保证 i+bi×k≤q)。若 bi=0 则相当于不做修改。注意所有操作的 k 是一样的。
修改 cx 即为按照以下规则替换 cx:
- 若 cx 为
U
,则替换为 D
。
- 若 cx 为
D
,则替换为 U
。
- 若 cx 为
R
,则替换为 L
。
- 若 cx 为
L
,则替换为 R
。
初始时小 F 在点 (1,1) 处,请输出 q 次移动后小 F 所在的位置 (x,y)。
输入格式
第一行四个整数 n,m,q,k。
接下来 n 行,每行一个长度为 m,由 .
和 X
构成的字符串,描述整个迷雾之森。
接下来 q 行,每行先是一个字符 ci,然后依次是两个整数 ai,bi,描述每次移动。
输出格式
共一行。
两个整数 x,y,表示小 F 最终的位置。
提示
【样例 1 解释】
小 F 的位置变化如下:
(1,1)→(2,1)→(2,2)→(1,2)→(1,3)
序列 c 的变化如下:
{D,R,D,L}→{D,R,D,L}→{D,R,U,R}→{D,R,U,R}→{D,R,U,R}
【数据规模与约定】
本题采用捆绑测试。
对于 100% 的数据,保证:
- 1≤n,m≤500
- 1≤k≤20
- 1≤q≤2×105
- 1≤ai,bi≤106
- ci 为
L
,R
,U
,D
四个字符中的一个。
子任务 |
分值 |
特殊性质 |
1 |
5 |
q=1 |
2 |
15 |
n,m,q≤100 |
3 |
20 |
k=1 |
4 |
30 |
n=1 |
5 |
无 |