T593958 网格染色

题目背景

$LG$ 是一名苦读《算法竞赛》的学生。 $LG$ 此刻在研究网格问题,他想把初始网格染成目标网格。

题目描述

给定一个 $n \times m$ 的网格,每个格子初始为白色$(0) $。你可以执行以下操作任意次数: - 行染色:选择一行,将该行所有格子染成同一种颜色(全 $0$ 或全 $1$)。 - 列染色:选择一列,将该列所有格子染成同一种颜色(全 $0$ 或全 $1$)。 你的目标是使初始网格转化为目标网格。\ 求最少操作次数,如果无法达成目标,输出 $-1$。

输入格式

第一行两个整数 $n$ 和 $m$。($1 \leq n, m \leq 1000$)\ 接下来 $n$ 行,每行 $m$ 个整数($0$ 或 $1$),表示目标网格。

输出格式

一个整数,表示最小染色次数。\ 如果无法达成目标,输出 $-1$。

说明/提示

对于 60\% 的数据,$n, m \leq 20$\ 对于 100\% 的数据,$n, m \leq 1000$