CF425B Sereja and Table

题目描述

Sereja 有一个 $n \times m$ 的矩形表格 $a$,表格的每个单元格中包含一个 0 或 1。Sereja 希望他的表格满足如下要求:每一个相同值的连通块都必须形成一个边与表格边平行的矩形。这些矩形区域需要被完全填满,即如果某个连通块形成了 $h \times w$ 的矩形,那么该连通块必须恰好包含 $hw$ 个单元格。 相同值的连通块是指满足以下条件的一组单元格: - 集合中的任意两个单元格值相同; - 该集合单元格在表格上连通(两个单元格连通当且仅当它们在同一行或同一列相邻); - 无法向该集合中继续添加单元格而不违反上述两个条件。 Sereja 可以最多改变 $k$ 个单元格的值,使得表格满足上述要求。问最少需要改变多少个单元格?如果无法实现,请输出 $-1$。

输入格式

第一行包含三个整数 $n$、$m$ 和 $k$,满足 $1 \leq n, m \leq 100$,$1 \leq k \leq 10$。接下来的 $n$ 行描述表格 $a$:第 $i$ 行包含 $m$ 个整数 $a_{i1}, a_{i2}, \ldots, a_{im}$,其中 $0 \leq a_{i,j} \leq 1$,表示第 $i$ 行每个单元格的值。

输出格式

如果无法满足要求,输出 $-1$。否则,输出最少需要更改的单元格数量。

说明/提示

由 ChatGPT 5 翻译