AT_past202306_l.ビット行列

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

给定一个 H×WH \times W 的矩阵 AA,其元素均为非负整数。

你可以进行如下任意次数(包括零次)的操作:

  • 选择一个整数 ii,满足 1≤i≤H1 \leq i \leq H,和一个非负整数 XX,将第 ii 行的每个元素 Ai,jA_{i,j} 替换为 Ai,j XOR XA_{i,j}\ \mathrm{XOR}\ X。
  • 选择一个整数 jj,满足 1≤j≤W1 \leq j \leq W,和一个非负整数 XX,将第 jj 列的每个元素 Ai,jA_{i,j} 替换为 Ai,j XOR XA_{i,j}\ \mathrm{XOR}\ X。

同时,给定一个 H×WH \times W 的矩阵 BB,其中元素为非负整数或者 −1-1。

请判断是否存在一系列操作,使得对于所有 Bi,j≠−1B_{i,j} \neq -1 的位置都有 Ai,j=Bi,jA_{i,j}=B_{i,j}。

什么是 XOR\mathrm{XOR}?非负整数 A,BA, B 的按位异或(XOR\mathrm{XOR}),记为 A⊕BA \oplus B,定义如下:

  • 对于二进制表示中每一位 2k2^k(k≥0k \geq 0),只有当 AA 和 BB 在该位上恰好有一个是 11 时,该位在 A⊕BA \oplus B 中为 11,否则为 00。

例如,3⊕5=63 \oplus 5 = 6(二进制为:011⊕101=110011 \oplus 101 = 110)。

一般来说,kk 个整数 p1,p2,…,pkp_1, p_2, \dots, p_k 的按位异或被定义为 (…((p1⊕p2)⊕p3)⊕⋯⊕pk)(\dots ((p_1 \oplus p_2) \oplus p_3) \oplus \dots \oplus p_k),且可以证明其结果与异或的顺序无关。

输入格式

输入按如下格式从标准输入读入:

H WH\ W
A1,1 A1,2 … A1,WA_{1,1}\ A_{1,2}\ \dots\ A_{1,W}
A2,1 A2,2 … A2,WA_{2,1}\ A_{2,2}\ \dots\ A_{2,W}
⋮\vdots
AH,1 AH,2 … AH,WA_{H,1}\ A_{H,2}\ \dots\ A_{H,W}
B1,1 B1,2 … B1,WB_{1,1}\ B_{1,2}\ \dots\ B_{1,W}
B2,1 B2,2 … B2,WB_{2,1}\ B_{2,2}\ \dots\ B_{2,W}
⋮\vdots
BH,1 BH,2 … BH,WB_{H,1}\ B_{H,2}\ \dots\ B_{H,W}

输出格式

如果能够满足条件,输出 Yes,否则输出 No。

输入输出样例

  • 输入#1

    2 2
    1 2
    3 4
    -1 3
    1 7

    输出#1

    Yes
  • 输入#2

    2 2
    1 2
    3 4
    5 3
    1 7

    输出#2

    No

说明/提示

样例解释 1

初始时,AA 如下:

1 2
3 4

对第二列进行 X=1X=1 操作后:

1 3
3 5

再对第二行进行 X=2X=2 操作后:

1 3
1 7

因此,可以得到满足条件的结果,输出 Yes。

样例解释 2

本例无论如何操作都无法满足条件,应输出 No。

数据范围

  • 1≤H,W≤5001 \leq H, W \leq 500
  • 0≤Ai,j<2300 \leq A_{i,j} < 2^{30}
  • −1≤Bi,j<230-1 \leq B_{i,j} < 2^{30}
  • 所有输入值均为整数。

由 ChatGPT 5 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页