#aBC283Eid332. [ABC283E] Don‘t Isolate Elements

[ABC283E] Don‘t Isolate Elements

AT_abc283_e [ABC283E] Don‘t Isolate Elements

题目描述

给定一个 HHWW 列的矩阵 AA,每个元素的值为 0011。对于满足 1iH1 \leq i \leq H1jW1 \leq j \leq W 的整数对 (i,j)(i,j),用 Ai,jA_{i,j} 表示矩阵 AA 的第 ii 行第 jj 列的元素。

你可以对矩阵 AA 进行如下操作,操作次数不限(可以为 00 次):

  • 选择一个满足 1iH1 \leq i \leq H 的整数 ii,将第 ii 行的所有元素 Ai,jA_{i,j}1jW1 \leq j \leq W)替换为 1Ai,j1 - A_{i,j}

对于矩阵中的元素 Ai,jA_{i,j},如果它在矩阵中上下左右四个方向上都没有与其值相同的元素(即对于四个整数对 (x,y)=(i1,j),(i+1,j),(i,j1),(i,j+1)(x,y) = (i-1,j), (i+1,j), (i,j-1), (i,j+1),只要 1xH,1yW1 \leq x \leq H, 1 \leq y \leq W,都满足 Ai,jAx,yA_{i,j} \neq A_{x,y}),则称 Ai,jA_{i,j}孤立元素

请判断是否可以通过若干次操作,使得矩阵 AA 中不存在孤立元素。如果可以,输出所需操作次数的最小值;如果不可以,输出 1-1

输入格式

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

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}

输出格式

如果可以通过若干次操作使得不存在孤立元素,输出最小操作次数;否则输出 1-1

输入输出样例 #1

输入 #1

3 3
1 1 0
1 0 1
1 0 0

输出 #1

1

输入输出样例 #2

输入 #2

4 4
1 0 0 0
0 1 1 1
0 0 1 0
1 1 0 1

输出 #2

2

输入输出样例 #3

输入 #3

2 3
0 1 0
0 1 1

输出 #3

-1

说明/提示

限制条件

  • 2H,W10002 \leq H, W \leq 1000
  • Ai,j=0A_{i,j} = 0Ai,j=1A_{i,j} = 1
  • 输入均为整数

样例解释 1

选择 i=1i = 1 进行操作后,A=((0,0,1),(1,0,1),(1,0,0))A = ((0,0,1),(1,0,1),(1,0,0)),此时不存在孤立元素。

由 ChatGPT 4.1 翻译