Logo 邂逅编程之美

UOJ

时间限制:2 s 空间限制:1024 MB
统计

题面描述

给定一个大小为 $2^n \times m$ 的循环矩阵 $A$(即第一行和最后一行相邻,第一列和最后一列相邻)。

定义一次操作是将所有位置同时变为其自己和周围的格子的异或和。

形式话说就是新的矩阵 $A'$ 满足:$A'_{i,j}=A_{i,j} \bigoplus A_{i,j+1} \bigoplus A_{i+1,j} \bigoplus A_{i,j-1} \bigoplus A_{i-1,j}$ 。

现在给定矩阵 $X$,请找到唯一的矩阵 $A$ 使得 $A$ 操作 $K$ 次是 $X$,如果无解或有不少于2个矩阵满足条件,输出 -1。

输入格式

第一行给定 $n,m,K$ 三个数。

接下来的 $2^n$ 行分别有 $m$ 个数,表示矩阵 $X$。

输出格式

若有唯一矩阵 $A$,输出矩阵 $A$ ,若有多种解或无解,输出 -1。

样例输入1

1 2 1
0 1
1 1

样例输出1

0 1
1 1

样例输入2

4 16 10
1 4 3 7 0 3 8 3 3 2 1 4 3 2 2 4 
7 0 2 5 4 1 1 0 8 4 5 8 3 3 2 4 
7 5 3 8 0 1 1 3 3 4 0 8 7 2 4 4 
4 6 1 0 0 2 1 8 8 8 6 1 1 8 7 0 
5 1 8 5 4 1 1 0 8 1 8 5 5 5 1 0 
3 2 2 3 6 3 2 4 3 8 8 4 9 5 5 4 
8 5 0 3 7 3 5 5 4 5 2 9 0 5 1 4 
9 4 9 5 9 1 1 3 2 1 9 3 7 6 7 7 
2 9 0 1 2 7 8 8 3 2 0 5 7 3 1 6 
9 1 3 9 4 6 4 8 8 5 1 7 2 1 4 4 
2 7 5 7 4 5 7 9 7 7 5 4 1 8 2 2 
9 5 1 6 3 7 6 3 3 0 0 5 1 7 1 5 
6 6 4 2 3 2 2 0 9 9 6 2 7 8 5 9 
5 8 7 8 8 3 4 3 3 4 8 6 3 9 4 9 
7 8 2 0 0 6 2 2 7 8 6 6 6 3 7 3 
4 4 3 2 0 7 7 5 4 5 4 7 6 8 9 5

样例输出2

11 15 4 1 14 6 8 7 15 11 0 13 7 15 2 5 
1 2 7 12 7 12 13 1 15 10 14 1 14 15 2 1 
12 14 6 6 12 14 9 0 11 0 15 15 10 11 13 1 
15 13 0 12 11 1 7 2 1 1 3 6 1 0 7 0 
11 3 1 15 13 15 7 10 1 0 14 1 8 8 13 5 
13 5 2 12 11 1 1 11 2 7 11 7 10 1 12 12 
14 6 9 0 3 5 3 5 11 10 0 3 4 2 2 15 
15 10 6 7 5 4 13 11 10 2 8 3 5 15 9 12 
6 15 5 15 3 12 9 5 13 9 3 3 14 3 4 10 
4 0 7 0 12 8 2 5 15 12 5 10 9 7 8 2 
11 5 9 13 14 4 12 13 15 7 0 15 10 11 15 15 
13 9 10 6 8 15 8 2 10 4 10 5 3 1 8 13 
9 15 12 4 12 13 3 2 9 11 3 4 10 0 8 9 
2 7 9 6 5 4 14 15 4 15 6 15 9 9 15 2 
0 1 4 9 14 13 8 9 15 3 6 2 12 14 1 0 
12 2 3 11 2 1 3 5 5 15 9 10 0 12 8 8

数据范围:

100% 的数据范围保证:$0 \leq n \leq 10,1 \leq m \leq 2^{10},1\leq K \leq 10^6,0 \leq X_{i,j} \leq 10^6$

子任务编号 $n\leq $ $m\leq $ $K\leq$ 分值
1 1 2 1 5
2 2 4 10 5
3 4 16 10 20
4 10 $m=2^n$ $10^6$ 30
5 10 $2^{10}$ $10^6$ 40