给定一个 $(3N + 1)$ 行 $(3N + 1)$ 列的网格。判断是否可以将每个格子染成黑色或白色,使得满足以下所有条件。如果可以,输出一种染色方案。
- 任意两个不同的黑色格子不共边。
- 从任意黑色格子出发,通过重复移动零次或多次到共角(即对角线相邻)的相邻黑色格子,可以到达某个与网格外部边界相邻的黑色格子。
- 所有白色格子组成一个单一的连通分量;也就是说,对于任意两个白色格子,可以通过重复移动零次或多次到共边的相邻白色格子,从一个白色格子移动到另一个。
- 在其中两个特定的行中,每行恰好有 $N + 1$ 个黑色格子;而在其余的每行中,每行恰好有 $N$ 个黑色格子。
- 在其中两个特定的列中,每列恰好有 $N + 1$ 个黑色格子;而在其余的每列中,每列恰好有 $N$ 个黑色格子。
输入格式
输入格式如下:
N
- 所有输入均为整数。
- $1 \le N \le 500$
输出格式
如果不存在满足条件的染色方案,则在一行中输出 No。
否则,按照以下格式输出一种满足条件的染色方案。设 $a_{i,j}$ 表示从上往下第 $i$ 行、从左往右第 $j$ 列的格子对应的字符:如果该格子为白色,则字符 $a_{i,j}$ 应为 .;如果为黑色,则为 #。
Yes
a_{1,1}...a_{1,3N+1}
:
a_{3N+1,1}...a_{3N+1,3N+1}如果存在多种合法的染色方案,输出任意一种均可。
样例
输入样例 1
1
输出样例 1
No
说明
以下三个输出示例符合 $N = 1$ 时的输出格式要求,但它们不满足条件,因此会被判定为错误。
Yes ##.. #... ...# ..##
Yes #.#. ...# #.#. .#..
Yes ...# .#.. ..#. #...
在第一个示例中,存在共边的黑色格子。
在第二个示例中,白色格子没有组成一个单一的连通分量。
在第三个示例中,关于黑色格子数量的条件未被满足。此外,例如从上往下第 2 行、从左往右第 2 列的黑色格子出发,即使重复移动到共角的黑色格子,也无法到达任何与网格外部边界相邻的黑色格子。
可以证明,当 $N = 1$ 时,不存在满足条件的染色方案。