AT_agc030_c [AGC030C] Coloring Torus
题目描述
对于一个 $n \times n$ 的格子,我们用 $(r,\ c)$ 表示第 $r+1$ 行第 $c+1$ 列的格子。对于这个格子,用 $K$ 种颜色的“好”涂色方式定义如下:
- 每个格子都被 $K$ 种颜色中的某一种涂色。
- $K$ 种颜色中的每一种颜色都至少出现在某个格子上。
- 给 $K$ 种颜色分别编号为 $1, 2, ..., K$。对于任意颜色 $i, j$($1 \leq i \leq K, 1 \leq j \leq K$),所有颜色为 $i$ 的格子,其相邻的颜色为 $j$ 的格子的数量,都必须相等(不论选择哪个颜色为 $i$ 的格子)。这里,格子 $(r, c)$ 的相邻格子指 $((r-1)\bmod n, c),\ ((r+1)\bmod n, c),\ (r, (c-1)\bmod n),\ (r, (c+1)\bmod n)$(如果这四个位置中有重复的格子,则该格子的颜色要按重复次数计数)。
给定 $K$,请你自由选择 $1 \leq n \leq 500$,构造一个 $n \times n$ 的格子的 $K$ 色“好”涂色方式。在本题的限制下,总是存在这样的构造。
输入格式
输入以如下格式从标准输入读入:
> $K$
输出格式
请按如下格式输出:
> $n$ $c_{0,0}$ $c_{0,1}$ $...$ $c_{0,n-1}$ $c_{1,0}$ $c_{1,1}$ $...$ $c_{1,n-1}$ $:$ $c_{n-1,0}$ $c_{n-1,1}$ $...$ $c_{n-1,n-1}$
其中 $n$ 表示格子的大小,$1 \leq n \leq 500$。$c_{r,c}$ 表示第 $(r, c)$ 个格子应该涂的颜色,$1 \leq c_{r,c} \leq K$。
说明/提示
### 限制
- $1 \leq K \leq 1000$
### 样例解释 1
- 任意颜色 $1$ 的格子都与 $3$ 个颜色 $1$ 的格子和 $1$ 个颜色 $2$ 的格子相邻。
- 任意颜色 $2$ 的格子都与 $2$ 个颜色 $1$ 的格子和 $2$ 个颜色 $2$ 的格子相邻。
如下输出是不正确的:
```
2 1 2 2 2
```
```
3 1 1 1 1 1 1 1 1 1
```
由 ChatGPT 4.1 翻译