#abc277f. [abc277_f]Sorting a Matrix

[abc277_f]Sorting a Matrix

问题描述

给定一个元素为非负整数的矩阵AA。对于一对整数(i,j)(i, j),其中1iH1\leq i \leq H1jW1\leq j \leq W,记Ai,jA_{i, j}AA的第ii行第jj列的元素。

我们对AA执行以下操作:

  • 首先,将AA中的每个元素00替换为任意的正整数(如果有多个元素为00,则可以用不同的正整数进行替换)。
  • 然后,重复进行下面两种操作之一,可以选择每次的操作方式,也可以选择不操作,重复操作任意次数(包括零次)。
    • 选择一对整数(i,j)(i, j),其中1i<jH1\leq i < j \leq H,交换AA的第ii行和第jj行。
    • 选择一对整数(i,j)(i, j),其中1i<jW1\leq i < j \leq W,交换AA的第ii列和第jj列。

判断是否可以使得AA满足以下条件。

  • $A_{1, 1} \leq A_{1, 2} \leq \cdots \leq A_{1, W} \leq A_{2, 1} \leq A_{2, 2} \leq \cdots \leq A_{2, W} \leq A_{3, 1} \leq \cdots \leq A_{H, 1} \leq A_{H, 2} \leq \cdots \leq A_{H, W}$。
  • 换句话说,对于满足1i,iH1\leq i, i' \leq H1j,jW1\leq j, j' \leq W的任意一对整数(i,j)(i, j)(i,j)(i', j'),都满足以下两个条件之一:
    • 如果i<ii < i',则Ai,jAi,jA_{i, j} \leq A_{i', j'}
    • 如果i=ii = i'j<jj < j',则Ai,jAi,jA_{i, j} \leq A_{i', j'}

约束条件

  • 2H,W2 \leq H, W
  • H×W106H \times W \leq 10^6
  • 0Ai,jH×W0 \leq A_{i, j} \leq H \times W
  • 输入中的所有值都是整数。

输入

输入以如下格式从标准输入给出:

HH WW A1,1A_{1, 1} A1,2A_{1, 2} \ldots A1,WA_{1, W} A2,1A_{2, 1} A2,2A_{2, 2} \ldots A2,WA_{2, W} \vdots AH,1A_{H, 1} AH,2A_{H, 2} \ldots AH,WA_{H, W}

输出

如果能够使得AA满足问题描述中的条件,则输出Yes;否则,输出No


示例输入1

3 3
9 6 0
0 4 0
3 0 3

示例输出1

Yes

可以按照以下操作使得AA满足问题描述中的条件,因此应该输出Yes

  • 首先,将AA中的为00的元素替换为如下所示的值:
9 6 8
5 4 4
3 1 3
  • 交换第二行和第三行,然后AA变为:
9 8 6
5 4 4
3 3 1
  • 交换第一行和第三行,然后AA变为:
3 3 1
5 4 4
9 8 6
  • 交换第一列和第三列,然后AA变为如下所示,满足问题描述中的条件。
1 3 3
4 4 5
6 8 9

示例输入2

2 2
2 1
1 2

示例输出2

No

无法通过操作使得AA满足问题描述中的条件,因此应该输出No