B - Mongeness 解説 /

実行時間制限: 2 sec / メモリ制限: 1024 MB

配点 : 200200

問題文

HH 行、横 WW 列のマス目があり、各マスには 11 つの整数が書かれています。 上から ii 行目、左から jj 列目のマスに書かれている整数は Ai,jA_{i, j} です。

マス目が下記の条件を満たすかどうかを判定してください。

1i1<i2H1 \leq i_1 < i_2 \leq H および 1j1<j2W1 \leq j_1 < j_2 \leq W を満たすすべての整数の組 (i1,i2,j1,j2)(i_1, i_2, j_1, j_2) について、Ai1,j1+Ai2,j2Ai2,j1+Ai1,j2A_{i_1, j_1} + A_{i_2, j_2} \leq A_{i_2, j_1} + A_{i_1, j_2} が成り立つ。

制約

  • 2H,W502 \leq H, W \leq 50
  • 1Ai,j1091 \leq A_{i, j} \leq 10^9
  • 入力はすべて整数

入力

入力は以下の形式で標準入力から与えられる。

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

出力

マス目が問題文中の条件を満たす場合は Yes と出力し、条件を満たさない場合は No と出力せよ。


入力例 1Copy

Copy
3 3
2 1 4
3 1 3
6 4 1

出力例 1Copy

Copy
Yes

1i1<i2H1 \leq i_1 < i_2 \leq H および 1j1<j2W1 \leq j_1 < j_2 \leq W を満たす整数の組 (i1,i2,j1,j2)(i_1, i_2, j_1, j_2)99 個存在し、それらすべてについて Ai1,j1+Ai2,j2Ai2,j1+Ai1,j2A_{i_1, j_1} + A_{i_2, j_2} \leq A_{i_2, j_1} + A_{i_1, j_2} が成り立ちます。例えば、

  • (i1,i2,j1,j2)=(1,2,1,2)(i_1, i_2, j_1, j_2) = (1, 2, 1, 2) について、Ai1,j1+Ai2,j2=2+13+1=Ai2,j1+Ai1,j2A_{i_1, j_1} + A_{i_2, j_2} = 2 + 1 \leq 3 + 1 = A_{i_2, j_1} + A_{i_1, j_2}
  • (i1,i2,j1,j2)=(1,2,1,3)(i_1, i_2, j_1, j_2) = (1, 2, 1, 3) について、Ai1,j1+Ai2,j2=2+33+4=Ai2,j1+Ai1,j2A_{i_1, j_1} + A_{i_2, j_2} = 2 + 3 \leq 3 + 4 = A_{i_2, j_1} + A_{i_1, j_2}
  • (i1,i2,j1,j2)=(1,2,2,3)(i_1, i_2, j_1, j_2) = (1, 2, 2, 3) について、Ai1,j1+Ai2,j2=1+31+4=Ai2,j1+Ai1,j2A_{i_1, j_1} + A_{i_2, j_2} = 1 + 3 \leq 1 + 4 = A_{i_2, j_1} + A_{i_1, j_2}
  • (i1,i2,j1,j2)=(1,3,1,2)(i_1, i_2, j_1, j_2) = (1, 3, 1, 2) について、Ai1,j1+Ai2,j2=2+46+1=Ai2,j1+Ai1,j2A_{i_1, j_1} + A_{i_2, j_2} = 2 + 4 \leq 6 + 1 = A_{i_2, j_1} + A_{i_1, j_2}
  • (i1,i2,j1,j2)=(1,3,1,3)(i_1, i_2, j_1, j_2) = (1, 3, 1, 3) について、Ai1,j1+Ai2,j2=2+16+4=Ai2,j1+Ai1,j2A_{i_1, j_1} + A_{i_2, j_2} = 2 + 1 \leq 6 + 4 = A_{i_2, j_1} + A_{i_1, j_2}

が成り立ちます。残りの (i1,i2,j1,j2)=(1,3,2,3),(2,3,1,2),(2,3,1,3),(2,3,2,3)(i_1, i_2, j_1, j_2) = (1, 3, 2, 3), (2, 3, 1, 2), (2, 3, 1, 3), (2, 3, 2, 3) についても同様に確認できます。
よって、Yes を出力します。


入力例 2Copy

Copy
2 4
4 3 2 1
5 6 7 8

出力例 2Copy

Copy
No

問題文中の条件を満たさないので、No を出力します。
例えば、(i1,i2,j1,j2)=(1,2,1,4)(i_1, i_2, j_1, j_2) = (1, 2, 1, 4) について、Ai1,j1+Ai2,j2=4+8>5+1=Ai2,j1+Ai1,j2A_{i_1, j_1} + A_{i_2, j_2} = 4 + 8 > 5 + 1 = A_{i_2, j_1} + A_{i_1, j_2} です。

Score : 200200 points

Problem Statement

We have a grid with HH horizontal rows and WW vertical columns, where each square contains an integer. The integer written on the square at the ii-th row from the top and jj-th column from the left is Ai,jA_{i, j}.

Determine whether the grid satisfies the condition below.

Ai1,j1+Ai2,j2Ai2,j1+Ai1,j2A_{i_1, j_1} + A_{i_2, j_2} \leq A_{i_2, j_1} + A_{i_1, j_2} holds for every quadruple of integers (i1,i2,j1,j2)(i_1, i_2, j_1, j_2) such that 1i1<i2H1 \leq i_1 < i_2 \leq H and 1j1<j2W1 \leq j_1 < j_2 \leq W.

Constraints

  • 2H,W502 \leq H, W \leq 50
  • 1Ai,j1091 \leq A_{i, j} \leq 10^9
  • All values in input are integers.

Input

Input is given from Standard Input in the following format:

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

Output

If the grid satisfies the condition in the Problem Statement, print Yes; otherwise, print No.


Sample Input 1Copy

Copy
3 3
2 1 4
3 1 3
6 4 1

Sample Output 1Copy

Copy
Yes

There are nine quadruples of integers (i1,i2,j1,j2)(i_1, i_2, j_1, j_2) such that 1i1<i2H1 \leq i_1 < i_2 \leq H and 1j1<j2W1 \leq j_1 < j_2 \leq W. For all of them, Ai1,j1+Ai2,j2Ai2,j1+Ai1,j2A_{i_1, j_1} + A_{i_2, j_2} \leq A_{i_2, j_1} + A_{i_1, j_2} holds. Some examples follow.

  • For (i1,i2,j1,j2)=(1,2,1,2)(i_1, i_2, j_1, j_2) = (1, 2, 1, 2), we have Ai1,j1+Ai2,j2=2+13+1=Ai2,j1+Ai1,j2A_{i_1, j_1} + A_{i_2, j_2} = 2 + 1 \leq 3 + 1 = A_{i_2, j_1} + A_{i_1, j_2}.
  • For (i1,i2,j1,j2)=(1,2,1,3)(i_1, i_2, j_1, j_2) = (1, 2, 1, 3), we have Ai1,j1+Ai2,j2=2+33+4=Ai2,j1+Ai1,j2A_{i_1, j_1} + A_{i_2, j_2} = 2 + 3 \leq 3 + 4 = A_{i_2, j_1} + A_{i_1, j_2}.
  • For (i1,i2,j1,j2)=(1,2,2,3)(i_1, i_2, j_1, j_2) = (1, 2, 2, 3), we have Ai1,j1+Ai2,j2=1+31+4=Ai2,j1+Ai1,j2A_{i_1, j_1} + A_{i_2, j_2} = 1 + 3 \leq 1 + 4 = A_{i_2, j_1} + A_{i_1, j_2}.
  • For (i1,i2,j1,j2)=(1,3,1,2)(i_1, i_2, j_1, j_2) = (1, 3, 1, 2), we have Ai1,j1+Ai2,j2=2+46+1=Ai2,j1+Ai1,j2A_{i_1, j_1} + A_{i_2, j_2} = 2 + 4 \leq 6 + 1 = A_{i_2, j_1} + A_{i_1, j_2}.
  • For (i1,i2,j1,j2)=(1,3,1,3)(i_1, i_2, j_1, j_2) = (1, 3, 1, 3), we have Ai1,j1+Ai2,j2=2+16+4=Ai2,j1+Ai1,j2A_{i_1, j_1} + A_{i_2, j_2} = 2 + 1 \leq 6 + 4 = A_{i_2, j_1} + A_{i_1, j_2}.

We can also see that the property holds for the other quadruples: (i1,i2,j1,j2)=(1,3,2,3),(2,3,1,2),(2,3,1,3),(2,3,2,3)(i_1, i_2, j_1, j_2) = (1, 3, 2, 3), (2, 3, 1, 2), (2, 3, 1, 3), (2, 3, 2, 3).
Thus, we should print Yes.


Sample Input 2Copy

Copy
2 4
4 3 2 1
5 6 7 8

Sample Output 2Copy

Copy
No

We should print No because the condition is not satisfied.
This is because, for example, we have Ai1,j1+Ai2,j2=4+8>5+1=Ai2,j1+Ai1,j2A_{i_1, j_1} + A_{i_2, j_2} = 4 + 8 > 5 + 1 = A_{i_2, j_1} + A_{i_1, j_2} for (i1,i2,j1,j2)=(1,2,1,4)(i_1, i_2, j_1, j_2) = (1, 2, 1, 4).



2025-04-05 (土)
03:04:06 +00:00