#P15156. [SWERC 2024] Recovering the Tablet
[SWERC 2024] Recovering the Tablet
说明
很久以前,在我们的现代文明兴起之前,在你们任何人出生之前,是公元前 1966 年(SWERC 前 3961 年)。在这段黑暗时期,既没有流媒体服务,也没有编程竞赛。因此,为了自娱自乐,人类在泥板上玩一些简单的游戏。
这一年,一个神秘的游戏被创造出来:Kakurus。我们对 Kakurus 几乎一无所知(互联网档案馆尚未创建),除了你在一个文物上发现的几条规则:
- 游戏在一个 的网格上进行;
- 每个单元格要么是黑色,要么是白色;
- 白色单元格最初是空的,但你需要给每个白色单元格填入一个 到 (含)之间的整数;
- 水平约束:一个黑色单元格可以包含一个整数,该整数等于其右侧连续白色单元格(直到第一个黑色单元格或网格边界)中数字的和;
- 垂直约束:一个黑色单元格可以包含一个整数,该整数等于其下方连续白色单元格(直到第一个黑色单元格或网格边界)中数字的和。
注意,最后两条规则彼此独立:一个黑色单元格内部可以有 、 或 个整数。还要注意,对数字的重复没有约束。最后,为了使这个问题有趣,每个白色单元格恰好被一个垂直约束和一个水平约束覆盖。
在你的文物底部有一个 Kakurus 网格。它已经被填充,但不一定是正确的解——可能是由于这件古老文物的年代久远而导致的劣化。你能找到一个尽可能接近这个提议的解的有效解吗?
如果你在一个白色单元格中填写的数字是 ,而该单元格在提议的解中的值是 ,那么接近分数为 。网格的最终接近分数是所有单元格接近分数的总和。你的目标是找出可以实现的最小接近分数。
输入格式
输入的第一行包含三个整数 、 和 ,分别表示网格的行数、列数和求和约束的数量。
接下来是 行。这些行的第 行仅包含从 到 的数字。第 个字符等于 当且仅当位于第 行第 列(,)的单元格是黑色的,否则等于该单元格(因此是白色的)在提议的解中的值。
然后是 行。每行的格式为 ,其中 等于 或 ,,, 是 到 (含)之间的整数。在你的解中,位于第 行第 列的单元格右侧(当 时)或下方(当 时)的连续白色单元格的和必须等于 。
保证每个白色单元格恰好被一个垂直约束和一个水平约束覆盖。
输出格式
如果网格无解,你必须输出 IMPOSSIBLE。否则,你的输出应包含可以实现的最小接近分数。
4 4 7
0000
0032
0233
0204
H 3 1 9
V 1 3 6
H 2 2 5
V 2 2 5
V 1 4 9
H 4 1 2
H 4 3 4
1
3 4 5
0000
0012
0345
H 2 2 3
H 3 1 12
V 2 2 3
V 1 3 5
V 1 4 6
IMPOSSIBLE
提示
数据范围
翻译由 DeepSeek 完成
京公网安备 11011102002149号