AT_abc375_c [ABC375C] Spiral Rotation

题目描述

给定一个 $N$ 行 $N$ 列的网格,这里 $N$ 是偶数。网格中从上往下第 $i$ 行、从左往右第 $j$ 列的格子记作 $(i, j)$。 每个格子要么被涂成黑色,要么被涂成白色,若 $A_{i, j} = \texttt{\#}$,则格子 $(i, j)$ 为黑色;若 $A_{i, j} = \texttt{.}$,则格子 $(i, j)$ 为白色。 请你依次对 $i = 1, 2, \ldots, \frac{N}{2}$ 执行如下操作,并输出所有操作结束后网格中每个格子的颜色。 - 对于所有满足 $i \leq x \leq N + 1 - i$ 且 $i \leq y \leq N + 1 - i$ 的整数 $x, y$,将格子 $(y, N + 1 - x)$ 的颜色替换为格子 $(x, y)$ 的颜色。**所有满足条件的 $x, y$ 的替换操作是同时进行的。**

输入格式

输入以如下格式从标准输入给出。 > $N$ > $A_{1, 1} A_{1, 2} \ldots A_{1, N}$ > $A_{2, 1} A_{2, 2} \ldots A_{2, N}$ > $\vdots$ > $A_{N, 1} A_{N, 2} \ldots A_{N, N}$

输出格式

所有操作结束后,若格子 $(i, j)$ 为黑色,则 $B_{i, j} = \texttt{\#}$,若为白色,则 $B_{i, j} = \texttt{.}$,请按如下格式输出: > $B_{1, 1} B_{1, 2} \ldots B_{1, N}$ > $B_{2, 1} B_{2, 2} \ldots B_{2, N}$ > $\vdots$ > $B_{N, 1} B_{N, 2} \ldots B_{N, N}$

说明/提示

### 限制条件 - $N$ 是 $2$ 到 $3000$ 之间的偶数。 - $A_{i, j}$ 只可能是 `#` 或 `.`。 ### 样例解释 1 经过操作后,网格中每个格子的颜色变化如下: ``` .......# .......# .####..# .####..# .##....# .##....# .####### .####### .......# ........ ........ ........ ........ .......# ######.. #######. #######. #######. .####..# ######.. #....##. #.....#. #.....#. .####..# ->##..##..-> #....##.-> #.##..#.-> #.###.#. .##....# ##..##.. #..####. #.##..#. #.#...#. .##....# ##...... #..####. #.#####. #.#####. .####### ##...... #....... #....... #....... .####### ######## ######## ######## ######## ``` 由 ChatGPT 4.1 翻译