#P7515. [省选联考 2021 A 卷] 矩阵游戏

    ID: 8415 远端评测题 1000ms 512MiB 尝试: 0 已通过: 0 显示难度省选/NOI− 上传者: 标签>各省省选2021Special JudgeO2优化

[省选联考 2021 A 卷] 矩阵游戏

题目描述

Alice 有一个 n×mn \times m 的矩阵 ai,ja_{i, j}(1≤i≤n1 \le i \le n,1≤j≤m1 \le j \le m),其每个元素为大小不超过 106{10}^6 的非负整数。

Bob 根据该矩阵生成了一个 (n−1)×(m−1)(n - 1) \times (m - 1) 的矩阵 bi,jb_{i, j}(1≤i≤n−11 \le i \le n - 1,1≤j≤m−11 \le j \le m - 1),每个元素的生成公式为

$$b_{i, j} = a_{i, j} + a_{i, j + 1} + a_{i + 1, j} + a_{i + 1, j + 1}$$

现在 Alice 忘记了矩阵 ai,ja_{i, j},请你根据 Bob 给出的矩阵 bi,jb_{i, j} 还原出 ai,ja_{i, j}。

输入格式

本题有多组数据。

第一行,一个整数 TT,表示数据组数。对于每组数据:

第一行,两个正整数 n,mn, m,表示矩阵 ai,ja_{i, j} 的大小。
接下来 n−1n - 1 行,每行 m−1m - 1 个非负整数,表示 bi,jb_{i, j}。

输出格式

对于每组数据:

  1. 若矩阵 bi,jb_{i, j} 无法被生成,则输出一行一个字符串 NO。
  2. 若矩阵 bi,jb_{i, j} 可被生成,则先输出一行一个字符串 YES,接下来输出 nn 行每行 mm 个(用单个空格分隔的)大小不超过 106{10}^6 的非负整数表示 ai,ja_{i, j}。

若有多个矩阵 ai,ja_{i, j} 可生成给出的 bi,jb_{i, j},输出其中任意一个即可。

3
3 3
28 25
24 25
3 3
15 14
14 12
3 3
0 3000005
0 0

YES
7 8 8
8 5 4
4 7 9
YES
4 2 2
5 4 6
5 0 2
NO

提示

【数据范围】

对于所有测试数据:1≤T≤101 \le T \le 10,2≤n,m≤3002 \le n, m \le 300,0≤bi,j≤4×1060 \le b_{i, j} \le 4 \times {10}^6。

每个测试点的具体限制见下表:

测试点编号 n,m≤n, m \le 特殊限制
1∼41 \sim 4 33 无
5∼75 \sim 7 1010 m=2m = 2
8∼108 \sim 10 100100
11∼1511 \sim 15 300300 0≤bi,j≤10 \le b_{i, j} \le 1
16∼2016 \sim 20 无