SP13363 WINDVANE - WIND VANE
题目描述
风向标是一种用于显示风向的设备。
在梦想城市,一个有 $m \times n$ 维度的矩阵显示城市的布局。为了监控城市中的风向,在每个单元格中都安装了一个风向标。这些风向标根据风向自动转动。假设风只会朝向北、东、西、南四个基本方向,分别用 `N`、`E`、`W` 和 `S` 表示。我们已知它们的初始方向。
风向的变化通过 0(顺时针)和 1(逆时针)表示。
函数 `Change(x1, y1, x2, y2, direction)` 用来改变从 $(x1, y1)$ 到 $(x2, y2)$ 子矩阵范围内所有风向标的朝向,例如,如果某个单元格的初始状态是朝北(`N`),而变化方向是顺时针,那么该单元格会变成朝东(`E`)。
风向可以随时改变,因此我们需要在任一时刻查询任何单元格处的风向。
函数 `Direction(x, y)` 应输出矩阵中 $(x, y)$ 处单元格的当前风向。
**输入格式:**
第一行输入为两个整数 $m$ 和 $n$,表示城市的维度。随后输入一个 $m \times n$ 的矩阵,表示风向标的初始方向。接下来的行数为整数 $c$,表示需要处理的命令数量。每个命令可以是形式为 "C x1 y1 x2 y2 d" 的方向改变命令或形式为 "D x y" 的方向查询命令。
**输出格式:**
根据命令的要求在适当时刻输出结果。
**数据约束与提示:**
- $1 \le m \le 1000$
- $1 \le n \le 1000$
- 矩阵中的每个字符都是 `{'N', 'E', 'W', 'S'}` 中的一个。
- $1 \le c \le 10000$
- $1 \le x1, y1, x2, y2, x, y \le 1000$
- $d = 0(顺时针) 或 1(逆时针)$
- $x1 \le x2, y1 \le y2$
**样例输入:**
```
5 5
ESWNE
NWWWN
EEESE
SSWSN
SNWEN
5
C 2 1 4 1 1
D 3 1
D 3 3
C 2 1 5 2 0
D 3 1
```
**样例输出:**
```
N
E
E
```
**本翻译由 AI 自动生成**
输入格式
无
输出格式
无