#ABC164F. I hate Matrix Construction

I hate Matrix Construction

题目描述

Given are an integer NN and arrays SS, TT, UU, and VV, each of length NN. Construct an NNNN matrix aa that satisfy the following conditions:

  • ai,ja_{i,j} is an integer.
  • 0ai,j<2640 \leq a_{i,j} \lt 2^{64}.
  • If Si=0S_{i} = 0, the bitwise AND of the elements in the ii-th row is UiU_{i}.
  • If Si=1S_{i} = 1, the bitwise OR of the elements in the ii-th row is UiU_{i}.
  • If Ti=0T_{i} = 0, the bitwise AND of the elements in the ii-th column is ViV_{i}.
  • If Ti=1T_{i} = 1, the bitwise OR of the elements in the ii-th column is ViV_{i}.

However, there may be cases where no matrix satisfies the conditions.

给定整数 NN 和数组 SSTTUUVV ,每个数组的长度均为 NN 。构造一个满足以下条件的 NNNN 矩阵 aa

  • ai,ja_{i,j} 是整数。
  • 0ai,j<2640 \leq a_{i,j} \lt 2^{64} .
  • 如果是 Si=0S_{i} = 0 ,那么第 ii 行中元素的位和是 UiU_{i}
  • 如果是 Si=1S_{i} = 1 ,那么第 ii 行元素的位与是 UiU_{i}
  • 如果是 Ti=0T_{i} = 0 ,那么第 ii 列中元素的位与是 ViV_{i}
  • 如果是 Ti=1T_{i} = 1 ,那么第 ii 列中元素的位与是 ViV_{i}

不过,也可能出现没有矩阵满足条件的情况。

输入格式

输入内容按以下格式标准输入:

NN
S1S_{1} S2S_{2} ...... SNS_{N}
T1T_{1} T2T_{2} ...... TNT_{N}
U1U_{1} U2U_{2} ...... UNU_{N}
V1V_{1} V2V_{2} ...... VNV_{N}

输出格式

如果存在满足条件的矩阵,请按以下格式打印一个这样的矩阵:

$a_{1,1}$ $...$  $a_{1,N}$  
$:$  
$a_{N,1}$ $...$  $a_{N,N}$  

请注意,满足条件的矩阵均可接受。

如果没有矩阵满足条件,则打印 1-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

说明

数据规模与约定

  • 输入值均为整数
  • 1N500 1 \leq N \leq 500
  • 0Si1 0 \leq S_{i} \leq 1
  • 0Ti1 0 \leq T_{i} \leq 1
  • 0Ui<264 0 \leq U_{i} \lt 2^{64}
  • 0Vi<264 0 \leq V_{i} \lt 2^{64}

样例 11 解释

在样本输入 11 中,我们需要找到一个矩阵,使得

  • 11 行元素的比特 AND 是 11
  • 22 行中元素的位相 OR 是 11
  • 11 列中元素的位与是 11
  • 22 列中元素的位与是 00