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 自动生成**

输入格式

输出格式