智乃的矩阵
题号:NC307029
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
Special Judge, 64bit IO Format: %lld

题目描述

\hspace{15pt}智乃有一个 nn 列的正方形矩阵,矩阵的每一个元素都是一个整数,即可以看成是一个长和宽分别为 nn 列的二维数组。
\hspace{15pt}智乃现在有一个操作:选择一个 22 列的连续子矩阵,然后选择该子矩阵中两对互不重叠的相邻数字(即两对水平相邻数字,或两对垂直相邻数字),令其中一对的两个数字均增加 1,另一对的两个数字均减少 1
\hspace{15pt}智乃可以无限次的使用(也可以不使用)这个操作,她现在想令整个矩阵中所有的数字都变成相同的值,问她是否可以达成要求。

输入描述:

\hspace{15pt}第一行输入一个正整数 n \left(1\leq n \leq 400\right),表示矩阵的大小。
\hspace{15pt}此后 n 行,第 i 行输入 n 个整数 a_{i,1}, a_{i,2}, \dots, a_{i,n} \left(-10^9\leq a_{i,j} \leq 10^9\right),表示矩阵第 i 行的数字。

输出描述:

\hspace{15pt}如果可以达到要求,则输出 \texttt{Yes};否则输出 \texttt{No}
示例1

输入

复制
2
1 1
-1 -1

输出

复制
Yes
示例2

输入

复制
4
1 0 0 -1
0 -1 0 -1
0 0 0 0
1 1 0 0

输出

复制
Yes

说明

\hspace{15pt}在这个样例中,一种可行方案为:\begin{array}{ccc}<br />\begin{bmatrix}1 & 0 & 0 & -1\\ 0 & -1 &0 &-1 \\ 0 & 0 & 0 & 0 \\ 1 & 1 & 0 & 0 \end{bmatrix} & <br />\longrightarrow & <br />\begin{bmatrix}1 & 0 & -1 & 0\\0 & -1 &-1 &0 \\ 0 & 0 & 0 & 0 \\1 & 1 & 0 & 0\end{bmatrix} \\<br />\small{\textrm{Step 1}} & & \small{\textrm{Step 2}}\\<br />& & \downarrow \\<br />\begin{bmatrix}1 & -1 & 0 & 0\\0 & -2 &0 &0 \\ 1 & 1 & 0 & 0 \\0 & 0 & 0 & 0\end{bmatrix} &<br />\longleftarrow &<br />\begin{bmatrix}1 & -1 & 0 &0\\0 & -2 &0 &0 \\ 0 & 0 & 0 & 0 \\1 & 1 & 0 & 0\end{bmatrix} \\<br />\small{\textrm{Step 4}} & & \small{\textrm{Step 3}}\\<br />\downarrow \\<br />\begin{bmatrix}1 & -1 & 0 & 0\\1 & -1 &0 &0 \\ 0 & 0 & 0 & 0 \\0 & 0 & 0 & 0\end{bmatrix} &<br />\longrightarrow &<br />\begin{bmatrix}0 & 0 & 0 & 0\\0 & 0 &0 &0 \\ 0 & 0 & 0 & 0 \\0 & 0 & 0 & 0\end{bmatrix} \\<br />\small{\textrm{Step 5}} & & \small{\textrm{Step 6}}\\<br />\end{array}
示例3

输入

复制
4
1 1 -1 0
-1 0 -1 0
1 1 -1 0
0 0 0 0

输出

复制
No
示例4

输入

复制
1
114514

输出

复制
Yes