CF1917E Construct Matrix
题目描述
给定一个偶数 $n$ 和一个整数 $k$,你的任务是构造一个由 $0$ 和 $1$ 组成的 $n \times n$ 矩阵,使得满足以下条件,或者报告无解:
- 矩阵中所有数字的和恰好为 $k$;
- 每一行的所有数字的按位异或结果都相同;
- 每一列的所有数字的按位异或结果都相同。
输入格式
每个测试点包含多组测试数据。第一行包含一个整数 $t$($1 \leq t \leq 130$),表示测试数据的组数。
接下来每组测试数据占一行,每行包含两个整数 $n$ 和 $k$($2 \leq n \leq 1000$,$n$ 为偶数,$0 \leq k \leq n^2$)。
保证所有测试数据中 $n$ 的总和不超过 $2000$。
输出格式
对于每组测试数据,如果存在满足条件的矩阵,输出 $\texttt{Yes}$,否则输出 $\texttt{No}$。
如果存在满足条件的矩阵,接下来的 $n$ 行,每行输出 $n$ 个整数,表示该矩阵的第 $i$ 行元素。
说明/提示
在第一个样例中,所有条件都满足:
- 矩阵中所有数字的和恰好为 $0$;
- 每一行的所有数字的按位异或结果都是 $0$;
- 每一列的所有数字的按位异或结果都是 $0$。
在第三个样例中,可以证明不存在满足所有条件的矩阵。
由 ChatGPT 4.1 翻译