题库练习 [ABC375C] Spiral Rotation
← 上一题 下一题 →

A7694 | [ABC375C] Spiral Rotation

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

给定一个 $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}$

输入输出样例

输入 #1
8
.......#
.......#
.####..#
.####..#
.##....#
.##....#
.#######
.#######
输出 #1
........
#######.
#.....#.
#.###.#.
#.#...#.
#.#####.
#.......
########
输入 #2
6
.#.#.#
##.#..
...###
###...
..#.##
#.#.#.
输出 #2
#.#.#.
.#.#.#
#.#.#.
.#.#.#
#.#.#.
.#.#.#
输入 #3
12
.......#.###
#...#...#..#
###.#..#####
..#.#.#.#...
.#.....#.###
.......#.#..
#...#..#....
#####.......
...#...#.#.#
..###..#..##
#..#.#.#.#.#
.####.......
输出 #3
.#..##...##.
#.#.#.#.#...
###.##..#...
#.#.#.#.#...
#.#.##...##.
............
............
.###.###.###
...#...#.#..
.###...#.###
...#...#...#
.###...#.###
C++ 编辑器
输入
输出