题目描述
定义 mex′(A) 表示在集合 {A1,A2,A3,⋯,A∣A∣} 中最小的未出现的正整数。例如,mex′({1,3,5})=2,mex′({3,4,2,6,5})=1。
给定整数 m 和 1∼n 的排列 {an},你要构造 n×(n−1) 的正整数矩阵满足以下条件:
- 当 m=0 时,每一行数组成的序列的 mex′ 值为 ai 且 max 值小于等于 n;
- 当 m=1 时,在前一要求的基础上,每一列中各个格子上的数所组成的序列为一个 1∼n 的排列。
输入格式
本题在单个测试点中有多组数据。
输入共 T×2+1 行。
第 1 行 1 个整数,表示单个测试点中的数据组数 T。
对于每组数据,输入共 2 行:
- 第 1 行 2 个整数,分别表示 n,m;
- 第 2 行 n 个整数,分别表示 ai。
输出格式
对于每组数据,输出共 n 行,每行 n−1 个正整数,分别表示矩阵的每一个元素。
若存在多解,输出其中任一即可。
输入输出样例
2
4 0
3 2 1 4
4 1
3 2 1 4
1 2 4
1 3 4
4 2 3
3 1 2
1 2 2
3 1 3
4 4 4
2 3 1
提示
【样例 1 解释】
你可以在两组数据之间输出空行。
【数据范围】
本题开启捆绑测试。
对于 100% 的数据,1≤T≤103,2≤n,∑n≤103,0≤m≤1,1≤ai≤n,且 {an} 为一个 1∼n 的排列。保证数据有解。
Subtask |
∑n≤ |
m= |
Note |
Score |
1 |
25 |
1 |
A |
10 |
2 |
100 |
No |
3 |
500 |
4 |
103 |
0 |
5 |
1 |
B |
6 |
C |
7 |
No |
40 |
- Note A:保证 n≤5;
- Note B:保证对于 ∀ 1≤i≤n,都有 ai=i;
- Note C:保证数据随机生成。