【发布时间】:2013-10-13 01:05:20
【问题描述】:
给定一个 R×C 网格,其中某些单元格被占用,覆盖被占用单元格所需的最小矩形数是多少?
- 每个矩形都是 R×1 或 1×C。
- 矩形可以重叠。
- 占用的单元格可以覆盖多个矩形。
示例:
x - - - -
- - x - -
- x - x x
x - x - -
这里x 和- 分别标记已占用和未占用的单元格。
在这种情况下,最少需要 3 个矩形。(覆盖第 1 列、第 2 列和第 3 行。)
谁能指出我正确的方向?这似乎很容易,但我无法得出一个可靠的解决方案!
【问题讨论】:
-
看看匈牙利算法解决分配问题。这构成了该算法的一部分。覆盖所有零所需的最少行数。
标签: algorithm