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 翻译