AT_abc164_f [ABC164F] I hate Matrix Construction
题目描述
给定一个整数 N 以及长度为 N 的数组 S、T、U、V。请构造一个满足以下条件的 N×N 矩阵 a(只需构造出任意一个即可)。
- ai,j 是整数。
- 0≤ai,j<264。
- 当 Si=0 时,第 i 行所有元素的按位与等于 Ui。
- 当 Si=1 时,第 i 行所有元素的按位或等于 Ui。
- 当 Ti=0 时,第 i 列所有元素的按位与等于 Vi。
- 当 Ti=1 时,第 i 列所有元素的按位或等于 Vi。
注意,可能不存在满足条件的矩阵。
输入格式
输入通过标准输入给出,格式如下:
N S1 S2 … SN T1 T2 … TN U1 U2 … UN V1 V2 … VN
输出格式
如果存在满足条件的矩阵,则输出任意一个满足条件的矩阵,格式如下:
a1,1 ... a1,N : a2,1 ... a2,N : … : aN,1 ... aN,N
如果不存在满足条件的矩阵,则输出 −1。
输入输出样例 #1
输入 #1
2
0 1
1 0
1 1
1 0
输出 #1
1 1
1 0
输入输出样例 #2
输入 #2
2
1 1
1 0
15 15
15 11
输出 #2
15 11
15 11
说明/提示
限制
- 所有输入均为整数。
- 1≤N≤500
- 0≤Si≤1
- 0≤Ti≤1
- 0≤Ui<264
- 0≤Vi<264
样例解释 1
在输入样例 1 中,需要找到一个矩阵,使得:
- 第 1 行所有元素的按位与为 1。
- 第 2 行所有元素的按位或为 1。
- 第 1 列所有元素的按位或为 1。
- 第 2 列所有元素的按位与为 0。
由 ChatGPT 4.1 翻译