A13983 | Unusual Matrix
时间限制1s
内存限制256MB
通过 / 提交0/0
题目描述
You are given two binary square matrices $a$ and $b$ of size $n \times n$ . A matrix is called binary if each of its elements is equal to $0$ or $1$ . You can do the following operations on the matrix $a$ arbitrary number of times (0 or more):
- vertical xor. You choose the number $j$ ( $1 \le j \le n$ ) and for all $i$ ( $1 \le i \le n$ ) do the following: $a_{i, j} := a_{i, j} \oplus 1$ ( $\oplus$ — is the operation [xor](https://en.wikipedia.org/wiki/Exclusive_or) (exclusive or)).
- horizontal xor. You choose the number $i$ ( $1 \le i \le n$ ) and for all $j$ ( $1 \le j \le n$ ) do the following: $a_{i, j} := a_{i, j} \oplus 1$ .
Note that the elements of the $a$ matrix change after each operation.
For example, if $n=3$ and the matrix $a$ is: $$$$ \begin{pmatrix} 1 & 1 & 0 \\ 0 & 0 & 1 \\ 1 & 1 & 0 \end{pmatrix} $$ Then the following sequence of operations shows an example of transformations: <ul> <li> vertical <span class="tex-font-style-tt">xor</span>, $j=1$ . $$ a= \begin{pmatrix} 0 & 1 & 0 \\ 1 & 0 & 1 \\ 0 & 1 & 0 \end{pmatrix} $$ </li><li> horizontal <span class="tex-font-style-tt">xor</span>, $i=2$ . $$ a= \begin{pmatrix} 0 & 1 & 0 \\ 0 & 1 & 0 \\ 0 & 1 & 0 \end{pmatrix} $$ </li><li> vertical <span class="tex-font-style-tt">xor</span>, $j=2$ . $$ a= \begin{pmatrix} 0 & 0 & 0 \\ 0 & 0 & 0 \\ 0 & 0 & 0 \end{pmatrix} $$ </li></ul></p><p>Check if there is a sequence of operations such that the matrix $a$ becomes equal to the matrix $b$$$.
- vertical xor. You choose the number $j$ ( $1 \le j \le n$ ) and for all $i$ ( $1 \le i \le n$ ) do the following: $a_{i, j} := a_{i, j} \oplus 1$ ( $\oplus$ — is the operation [xor](https://en.wikipedia.org/wiki/Exclusive_or) (exclusive or)).
- horizontal xor. You choose the number $i$ ( $1 \le i \le n$ ) and for all $j$ ( $1 \le j \le n$ ) do the following: $a_{i, j} := a_{i, j} \oplus 1$ .
Note that the elements of the $a$ matrix change after each operation.
For example, if $n=3$ and the matrix $a$ is: $$$$ \begin{pmatrix} 1 & 1 & 0 \\ 0 & 0 & 1 \\ 1 & 1 & 0 \end{pmatrix} $$ Then the following sequence of operations shows an example of transformations: <ul> <li> vertical <span class="tex-font-style-tt">xor</span>, $j=1$ . $$ a= \begin{pmatrix} 0 & 1 & 0 \\ 1 & 0 & 1 \\ 0 & 1 & 0 \end{pmatrix} $$ </li><li> horizontal <span class="tex-font-style-tt">xor</span>, $i=2$ . $$ a= \begin{pmatrix} 0 & 1 & 0 \\ 0 & 1 & 0 \\ 0 & 1 & 0 \end{pmatrix} $$ </li><li> vertical <span class="tex-font-style-tt">xor</span>, $j=2$ . $$ a= \begin{pmatrix} 0 & 0 & 0 \\ 0 & 0 & 0 \\ 0 & 0 & 0 \end{pmatrix} $$ </li></ul></p><p>Check if there is a sequence of operations such that the matrix $a$ becomes equal to the matrix $b$$$.
输入格式
The first line contains one integer $t$ ( $1 \leq t \leq 1000$ ) — the number of test cases. Then $t$ test cases follow.
The first line of each test case contains one integer $n$ ( $1 \leq n \leq 1000$ ) — the size of the matrices.
The following $n$ lines contain strings of length $n$ , consisting of the characters '0' and '1' — the description of the matrix $a$ .
An empty line follows.
The following $n$ lines contain strings of length $n$ , consisting of the characters '0' and '1' — the description of the matrix $b$ .
It is guaranteed that the sum of $n$ over all test cases does not exceed $1000$ .
The first line of each test case contains one integer $n$ ( $1 \leq n \leq 1000$ ) — the size of the matrices.
The following $n$ lines contain strings of length $n$ , consisting of the characters '0' and '1' — the description of the matrix $a$ .
An empty line follows.
The following $n$ lines contain strings of length $n$ , consisting of the characters '0' and '1' — the description of the matrix $b$ .
It is guaranteed that the sum of $n$ over all test cases does not exceed $1000$ .
输出格式
For each test case, output on a separate line:
- "YES", there is such a sequence of operations that the matrix $a$ becomes equal to the matrix $b$ ;
- "NO" otherwise.
You can output "YES" and "NO" in any case (for example, the strings yEs, yes, Yes and YES will be recognized as positive).
- "YES", there is such a sequence of operations that the matrix $a$ becomes equal to the matrix $b$ ;
- "NO" otherwise.
You can output "YES" and "NO" in any case (for example, the strings yEs, yes, Yes and YES will be recognized as positive).
输入输出样例
输入 #1
3 3 110 001 110 000 000 000 3 101 010 101 010 101 010 2 01 11 10 10
输出 #1
YES YES NO
The first test case is explained in the statements.
In the second test case, the following sequence of operations is suitable:
- horizontal xor, $i=1$ ;
- horizontal xor, $i=2$ ;
- horizontal xor, $i=3$ ;
It can be proved that there is no sequence of operations in the third test case so that the matrix $a$ becomes equal to the matrix $b$ .
In the second test case, the following sequence of operations is suitable:
- horizontal xor, $i=1$ ;
- horizontal xor, $i=2$ ;
- horizontal xor, $i=3$ ;
It can be proved that there is no sequence of operations in the third test case so that the matrix $a$ becomes equal to the matrix $b$ .
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?
提交通过
评测结果:Accepted