数织怎么解:一行一行推出整幅画
阅读约 6 分钟 ·
数织把一幅图藏在方格里。每行左边和每列上方的数字,按顺序给出这一行或列里连续涂黑格子的长度。涂对了格子,图画就出现了。
Puzzimo 上的每道数织都能一行一行地推出来,不需要猜。这篇教程介绍完成全部工作的几种行推理技巧。
规则
- 每个提示数字代表这一行或列里一段连续涂黑的格子。
- 这些段按提示的顺序排列,从左到右或从上到下。
- 两段之间至少隔一个空格。
- 确定为空的格子用 ✕ 标记:它们和涂黑的格子一样有用。
重叠法
拿一条线里的一个长段,把它尽量往左推,再尽量往右推。两种位置都覆盖到的格子一定是涂黑的,不管这一段实际在哪里。
在 10 格宽的一行里,长度为 7 的段推到最左覆盖第 1 到 7 格,推到最右覆盖第 4 到 10 格,所以第 4 到 7 格一定是黑的。经验公式:在宽度为 w 的线里,长度为 k 的段只要 2k 大于 w,就能确定中间的 2k − w 格。
能一次填满的线
把一条线的所有段加起来,再加上每两段之间的一个空格。如果总数等于宽度,就只有一种排法。在 10 格宽的一行里,提示 4 5(4 + 1 + 5 = 10)正好填满这一行。提示 0 表示整条线都是空的:全部打 ✕。
从边缘推
紧挨着盘面边缘的涂黑格子属于这条线的第一段。这一段一定从那里开始,所以可以把它剩下的部分涂黑,并在它后面紧接着打一个 ✕。
- 提示为 3 2 的一行,第一格是黑的,那么第 1 到 3 格涂黑,第 4 格是空的。
- 靠近边缘的 ✕ 同样有用:如果第一段在它前面放不下,这一段就从 ✕ 后面开始。
- 小到放不下任何剩余段的空隙,打上 ✕。
行列交叉核对
你在一行里涂黑或打 ✕ 的每一格,对它所在的列来说都是新信息。数织的节奏就是:做完所有行,再做所有列,再回到行,每一轮都多知道几格。在大盘面上,多留意刚得到新格子的线,它们最可能有进展。
解题流程
- 提示为 0 的线全部打 ✕,提示正好填满的线全部涂黑。
- 对每条有长段的线使用重叠法。
- 从边缘推:把碰到边缘的段补完整。
- 给任何段都够不到的格子,以及放不下剩余段的空隙打 ✕。
- 在行和列之间来回推,直到图画完成。
练习
Puzzimo 的数织有 5×5、10×10 和 15×15 三种大小,每日挑战是 10×10。点击或拖动涂色,用切换按钮(或 X 键)改为打 ✕。在应该为空的格子上涂色,或在应该涂黑的格子上打 ✕,都算一次失误:这一格会闪烁并被纠正,第三次失误这一局就结束。
常见问题
数织里的重叠法是什么?
把一段尽量推向一个方向,再尽量推向另一个方向,两种位置都覆盖的格子一定是黑的。这是有长提示的线最主要的开局方法。
数织和 Picross、Griddlers 一样吗?
一样。数织、Nonogram、Picross、Griddlers、Hanjie 和「按数字涂色」谜题用的都是同一套规则。
要标记空格吗?
要。✕ 标记是一半的推理:它们说明段不能放在哪里,也就说明了段必须放在哪里。Puzzimo 把打错的 ✕ 也算作失误,所以只标你确定的格子。