题目背景
"人工智能的基础是线性代数。"
题目描述
给出一个长度为 $n$ 数组 $f$,满足 $1\leq f_i\leq i$。
构造一个大小为 $n\times n$ 的非负整数矩阵,使得 $\forall i, \text{mex}(\{a_{1, i}, a_{2, i}, \cdots, a_{n, i}\})=\text{mex}(\{a_{i, 1}, a_{i, 2}, \cdots, a_{i, n}\})=f_i$。
$\text{mex}(a)$ 的定义为 $a$ 中最小的未出现过的非负整数。如 $\text{mex}(\{0, 1, 3, 4\})=2$, $\text{mex}(\{1, 2, 5\})=0$。
如果有多个符合要求的矩阵,输出任意一个。
可以证明在给出的限制条件下至少存在一个符合要求的矩阵。
每个数据点包含 $T$ 组测试数据。
输入格式
第一行两个整数 $taskid$ 和 $T$,表示数据点编号和测试数据组数。 $taskid=0$ 表示样例。
对于每组测试数据:
第一行一个整数 $n$,表示数组的长度。
接下来一行 $n$ 个整数,表示数组 $f$。
输出格式
对于每组测试数据,输出 $n$ 行,每行 $n$ 个整数,表示构造的矩阵。
样例
样例输入 1
0 3
3
1 1 2
5
1 1 3 2 5
4
1 2 1 3
样例输出 1
0 2 0
0 0 0
0 0 1
3 2 0 0 4
0 0 2 0 3
2 4 1 0 2
0 0 1 1 0
2 0 4 3 1
2 0 2 2
0 1 0 1
2 3 0 0
0 0 2 1
时空限制与数据范围
1s, 256MB
对于所有的数据: - $T\leq 100$,
$\sum n\leq 2000$,
$1\leq f_i\leq i$
数据点编号 | $n$ | $\sum n\leq $ | 特殊性质 |
---|---|---|---|
$1$ | $2$ | $20$ | 无 |
$2$ | $5$ | $100$ | 无 |
$3$ | $2000$ | $2000$ | A |
$4$ | $2000$ | $2000$ | B |
$5$ | $2000$ | $2000$ | C |
$6\sim 10$ | $2000$ | $2000$ | 无 |
特殊性质 A: $f_i=1$,
特殊性质 B: $f_i=i$,
特殊性质 C: $f_i\leq 5$。