P17538 音符方阵

题目背景

『你会忘记我吗?』 你突然这样问我,我不知道应该怎么回答。 我的记忆是有限的,至于一生都不会忘记的部分只有一个 $n \times n$ 的方阵,奢求能够把和你度过的所有时光全部镌刻其中显然是不可能了。但是我们一起合奏过的音符构成了若干音阶。如果能够记住这些音符,也许就能记住永远向往着自由,永远绽放着的你了。你的演奏实在是太特别,我绝对不可能记错的。 『不会忘记,即使是死也不会的。』

题目描述

给定一个 $n$,构造一个 $n\times n$ 的矩阵 $a_{nn}$ 满足: - 对于矩阵中的所有元素 $a_{ij}$,满足 $1\le a_{ij}\le n$ 且为整数。 - 对于每个 $1$ 到 $n$ 的整数 $i$: - **存在且仅存在**一行,使得这一行上所有 $i$ 的倍数列位置上出现的数都是 $i$; - **存在且仅存在**一列,使得这一列上所有 $i$ 的倍数行位置上出现的数都是 $i$。 可以证明,至少存在一种符合要求的构造。如果有多种构造,你可以输出任意一种。

输入格式

**本题包含多组测试。** 对于每组数据,第一行一个整数 $T$,表示测试数据组数。 对于每组测试数据,输入一行一个整数 $n$,表示你要构造的方阵大小。

输出格式

对于每组数据,输出 $n$ 行,每行 $n$ 个用空格隔开的整数,表示你构造的方阵。

说明/提示

### 样例 #1 解释 对于第一组数据: - $1$ 满足要求。因为第一行上所有 $1$ 的倍数列位置($(1,1),(1,2),(1,3),(1,4)$)上均为 $1$,第一列上所有 $1$ 的倍数行位置($(1,1),(2,1),(3,1),(4,1)$)上均为 $1$,并且没有其他行和列满足对应的要求。 - $2$ 满足要求。因为第三行上所有 $2$ 的倍数列位置($(3,2),(3,4)$)上均为 $2$,第二列上所有 $2$ 的倍数行位置($(2,2),(4,2)$)上均为 $2$,并且没有其他行和列满足对应的要求。 - $3$ 满足要求。因为第三行上所有 $3$ 的倍数列位置($(3,3)$)上均为 $3$,第三列上所有 $3$ 的倍数行位置($(3,3)$)上均为 $3$,并且没有其他行和列满足对应的要求。 - $4$ 满足要求。因为第二行上所有 $4$ 的倍数列位置($(2,4)$)上均为 $4$,第三列上所有 $4$ 的倍数行位置($(4,3)$)上均为 $4$,并且没有其他行和列满足对应的要求。 所以这是一种符合要求的矩阵。 ### 数据范围 **本题开启捆绑测试。** 对于 $100\%$ 的数据,$1\le T\le 100$,$1\le \sum n\le 2000$。 | 子任务 | $\sum n\le$ | 得分 | |:-:|:-:|:-:| | 1 | $8$ | $25$ | | 2 | $20$ | $25$ | | 3 | $2000$ | $50$ |