P2622 关灯问题 II

题目描述

现有 $n$ 盏灯,以及 $m$ 个按钮。每个按钮可以同时控制这 $n$ 盏灯——按下了第 $i$ 个按钮,对于所有的灯都有一个效果。按下 $i$ 按钮对于第 $j$ 盏灯,是下面 $3$ 种效果之一: - 如果 $a_{i,j}$ 为 $1$,那么当这盏灯开了的时候,把它关上,否则不管; - 如果 $a_{i,j}$ 为 $-1$,如果这盏灯是关的,那么把它打开,否则也不管; - 如果 $a_{i,j}$ 为 $0$,无论这灯是否开,都不管。 现在这些灯都是开的,给出所有开关对所有灯的控制效果,求问最少要按几下按钮才能全部关掉。

输入格式

前两行两个整数,分别是 $n$ 和 $m$。 接下来 $m$ 行,每行 $n$ 个整数,第 $(i+2)$ 行的第 $j$ 个整数为 $a_{i,j}$,表示第 $i$ 个开关对第 $j$ 个灯的效果。

输出格式

一个整数,表示最少的按按钮的次数。如果没有任何办法使其全部关闭,输出 $-1$。

说明/提示

### 数据范围及约定 - 存在 $20\%$ 的数据,输出无解可以得分。 - 存在 $20\%$ 的数据,$n \le 5$。 - 存在 $20\%$ 的数据,$m \le 20$。 上面的数据点可能会重叠。 对于 $100\%$ 的数据,$1 \le n \le 10, 1 \le m \le 100$。