2781: T2-翻折
题目描述
给你一个 n×m 的数组 ai,j 。执行 n+m−2 次操作,操作有四种:
- `L`:将第二列的每个数减去同一行第一列的数,然后删去第一列。
- `R`:将倒数第二列的每个数减去同一行最后一列的数,然后删去最后一列。
- `U`:将第二行的每个数减去同一列第一行的数,然后删去第一行。
- `D`:将倒数第二行的每个数减去同一列最后一行的数,然后删去最后一行。
n+m−2 次操作由 m−1 次 `L` 和 `R` 操作和 n−1 次 `U` 和 `D` 操作组成。可以发现这样操作后最终会只剩下一个数。请求出最终剩下的数。
输入
第一行两个整数 n,m,表示行数和列数。
接下来 n 行,第 i 行 m 个整数 ai,1 ,…,ai,m,表示数组的第 i 行。
接下来一行,一个长度为 n+m−2 的由 `L`, `R`, `U`, `D` 构成的字符串,表示操作序列。
输出
一行,一个整数,表示最后剩下的数。
样例输入 复制
2 3
1 2 3
4 5 6
LUR
样例输出 复制
-3
提示
样例解释
初始:
```
1 2 3
4 5 6
```
一次操作后:
```
1 3
1 6
```
两次操作后:
```
0 3
```
三次操作后:
```
-3
```
数据范围
对于 30% 的数据,n=1。
对于 60% 的数据,n,m≤100。
对于另外 20% 的数据,操作只有 `R` 和 `D`。
对于 90% 的数据,n,m≤500。
对于 100% 的数据,1≤n,m≤2000,∣ai,j∣≤104。
请注意,你可能需要使用较为快速的输入方式。