AT_abc433_e [ABC433E] Max Matrix 2

题目描述

给定整数 $N, M$,一个长度为 $N$ 的整数序列 $X = (X_1, X_2, \ldots, X_N)$,以及一个长度为 $M$ 的整数序列 $Y = (Y_1, Y_2, \ldots, Y_M)$。 请你判断是否存在一个 $N$ 行 $M$ 列的整数矩阵 $A = (A_{i,j})$ ($1 \leq i \leq N,\ 1 \leq j \leq M$),满足以下所有条件。如果存在,构造出任意一个满足条件的矩阵 $A$。 - $1 \leq A_{i,j} \leq N \times M$。 - $A_{i,j}$ 的 $N \times M$ 个元素互不相同。 - 对于 $i=1,2,\ldots,N$,有 $\displaystyle \max_{1\leq j\leq M} A_{i,j} = X_i$。 - 对于 $j=1,2,\ldots,M$,有 $\displaystyle \max_{1\leq i\leq N} A_{i,j} = Y_j$。 共有 $T$ 组测试数据;请分别解答每一组数据。

输入格式

输入由标准输入给出,格式如下: $T$ $\text{case}_1$ $\text{case}_2$ $\vdots$ $\text{case}_T$ 每组测试数据格式如下: $N\ M\ X_1\ X_2\ \ldots\ X_N\ Y_1\ Y_2\ \ldots\ Y_M$

输出格式

按顺序输出每组测试数据的答案,每组用换行隔开。 对于每组测试,如果不存在符合条件的 $A$,输出 `No`(大小写敏感)。 否则,输出一个符合条件的 $A$,格式如下: Yes $A_{1,1}\ A_{1,2}\ \ldots\ A_{1,M}$ $A_{2,1}\ A_{2,2}\ \ldots\ A_{2,M}$ $\vdots$ $A_{N,1}\ A_{N,2}\ \ldots\ A_{N,M}$ 如果有多个满足条件的矩阵 $A$,输出任意一个都可。

说明/提示

### 样例解释 1 以第一个测试数据为例。 在样例输出中,所有 $A$ 的元素都在 $1$ 到 $6$ 之间,且均互不相同,并且: - $\displaystyle \max_{1\leq j\leq 3} A_{1,j} = \max\lbrace 5,1,4\rbrace = 5 = X_1$ - $\displaystyle \max_{1\leq j\leq 3} A_{2,j} = \max\lbrace 2,3,6\rbrace = 6 = X_2$ - $\displaystyle \max_{1\leq i\leq 2} A_{i,1} = \max\lbrace 5,2\rbrace = 5 = Y_1$ - $\displaystyle \max_{1\leq i\leq 2} A_{i,2} = \max\lbrace 1,3\rbrace = 3 = Y_2$ - $\displaystyle \max_{1\leq i\leq 2} A_{i,3} = \max\lbrace 4,6\rbrace = 6 = Y_3$ 因此全部条件均被满足。 其他输出,如: ``` Yes 5 3 1 4 2 6 ``` 同样可以被接受。 ### 数据范围 - $1\leq T\leq 10^5$ - $1\leq N, M$ - 所有测试数据中 $\sum N\times M \leq 2\times 10^5$ - $1\leq X_i,Y_j\leq N\times M$ - 所有输入均为整数。 由 ChatGPT 5 翻译