You are given four positive integers nn , mm , aa , bb ( 1 \le b \le n \le 501≤b≤n≤50 ; 1 \le a \le m \le 501≤a≤m≤50 ). Find any such rectangular matrix of size n \times mn×m that satisfies all of the following conditions:
each row of the matrix contains exactly aa ones;
each column of the matrix contains exactly bb ones;
all other elements are zeros.
If the desired matrix does not exist, indicate this.
For example, for n=3n=3 , m=6m=6 , a=2a=2 , b=1b=1 , there exists a matrix satisfying the conditions above:
$$ \begin{vmatrix} 0 & 1 & 0 & 0 & 0 & 1 \ 1 & 0 & 0 & 1 & 0 & 0 \ 0 & 0 & 1 & 0 & 1 & 0 \end{vmatrix} $$
输入格式
The first line contains an integer tt ( 1 \le t \le 10001≤t≤1000 ) — the number of test cases. Then tt test cases follow.
Each test case is described by four positive integers nn , mm , aa , bb ( 1 \le b \le n \le 501≤b≤n≤50 ; 1 \le a \le m \le 501≤a≤m≤50 ), where nn and mm are the sizes of the matrix, and aa and bb are the number of ones for rows and columns, respectively.
输出格式
For each test case print:
"YES" (without quotes) and the required matrix (if there are several answers, print any) if it exists, or
"NO" (without quotes) if it does not exist.
To print the matrix n \times mn×m , print nn rows, each of which consists of mm numbers 00 or 11 describing a row of the matrix. Numbers must be printed without spaces.
题意翻译
题目描述
你有四个正整数nn, mm, aa, bb (1\leq b\leq n\leq 50;1\leq a\leq m\leq 50)(1≤b≤n≤50;1≤a≤m≤50)。请你构造任意一个满足下列条件的nn行mm列的矩阵:
矩阵中的每一行都包含正好aa个11;
矩阵中的每一列都包含正好bb个11;
矩阵中剩下的位置全是00。
如果矩阵不存在,则表示其不存在即可。
比如说,对于n=3,m=6,a=2,b=1n=3,m=6,a=2,b=1的一组数据,可以构造出以下的满足条件的矩阵:
\begin{vmatrix} 0 & 1 & 0 & 0 & 0 & 1 \\ 1 & 0 & 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 & 1 & 0 \end{vmatrix}
∣
∣
∣
∣
∣
∣
∣
0
1
0
1
0
0
0
0
1
0
1
0
0
0
1
1
0
0
∣
∣
∣
∣
∣
∣
∣
输入格式
本题输入包含多组数据。
第一行包含一个整数tt (1\leq t\leq 1000)(1≤t≤1000),表示数据的组数。
接下来有tt行输入,每行输入都包含四个正整数:nn, mm, aa, bb (1\leq b\leq n\leq 50;1\leq a\leq m\leq 50)(1≤b≤n≤50;1≤a≤m≤50)。其中,n,mn,m为矩阵的行数和列数、a,ba,b为矩阵中每行包含的11的个数和每列包含的11的个数。
输出格式
对于每组数据,有如下输出:
如果可以构造出满足条件的矩阵,输出YES后输出构造出来的矩阵。
如果构造不出,则直接输出NO。
输入输出样例
输入 #1复制
5
3 6 2 1
2 2 2 1
2 2 2 2
4 4 2 2
2 1 1 2
输出 #1复制
YES
010001
100100
001010
NO
YES
11
11
YES
1100
1100
0011
0011
YES
1
1