#LX0032. 关灯1【加强版】

关灯1【加强版】

关灯问题

有一个n×mn\times m的灯泡矩阵,一开始有的点是关(00),有的点是开(11)。

你可以每次可以操作一个坐标(x,y)(x,y),这个坐标及周围最多44个格子的00会变成1111会变成00

问:最少几次操作可以把整个矩阵全变成00,如果无法达成目标,输出1-1

输入格式

第一行n,m(2n1000,2m1000)n,m(2\leq n\leq 1000,2\leq m\leq 1000)

接下来一个n×mn\times m的矩阵,表示每个位置的初始状态(0ax,y10\leq a_{x,y} \leq 1)。

前70分:时限4秒,后30分:时限1秒。

输出格式

如题所述。 本题保证解唯一。

样例输入1

3 3
0 1 0
1 1 1
0 1 0

样例输出1

1

样例解释

在坐标(2,2)(2,2)操作一次即可。