显性三数组与隐性三数组是数对图形的三格版本,它们能排除数对够不到的候选数。三数组是一个区域(一行、一列或一个宫)中的三个格,它们合起来恰好拥有三个数字。图形一旦确认,这三个数字就在这三个格里,在该区域的其他地方都不会出现。
显性三数组是三个格,它们合并的候选数列表中只有三个数字。每个格至少需要其中的两个;不必有哪个格含有全部三个。所以 {2,7}、{2,5,7} 和 {5,7} 构成了基于 {2,5,7} 的显性三数组。无论这些数字最后怎样落定,这三个格都用掉 2、5 和 7,所以区域中的其他每个格都失去这三个数字。
隐性三数组是从另一面看到的同一个事实。三个数字在区域中只出现在三个格里,尽管这些格里可能还带着一堆其他候选数。三个数字需要三个格,而它们只有这三个格,所以这些格里的其他候选数都不成立。
| 显性三数组 | 隐性三数组 | |
|---|---|---|
| 你要数 | 三个格内的候选数 | 三个数字在区域中的位置 |
| 触发条件 | 三个格恰好覆盖三个数字 | 三个数字恰好只能放进三个格 |
| 你要删除 | 区域其余格中的这些数字 | 这三个格内部的所有其他候选数 |
| 可见程度 | 明显,列表很短 | 藏在多余的候选数后面 |
显性三数组和隐性三数组可以从两面描述同一个区域,但前提是区域恰好有 6 个未解格。这时另外三个格构成剩余数字的隐性三数组。未解格更多时,剩余的集合就更大(第二个例子里的第 5 宫有 7 个,它的另外四个格构成显性四数组)。用你的眼睛先发现的那种形式即可。
三数组检查起来成本低,又容易漏掉,所以在动用更大的图形之前先扫一遍。
先看第 9 列中的显性三数组。
C9 是 ,G9 是 ,J9 是 。它们合起来只用到 5、7 和 8,没有哪个格需要全部三个。所以 5 和 8 离开 E9,5 和 7 离开 F9。
再看第 5 宫的隐性三数组。
数字 1、4 和 9 只能放在 E5、E6 和 F6。D4、D5、E4 和 F4 都不含它们。这三个格必须放这三个数字,所以 3 离开 E5、E6 和 F6,8 离开 F6。结果是一个显性三数组。
{2,5,7,9},你得到的是四数组,不是三数组,排除规则也不同。三数组是最后一个基础技巧,也是认真做笔记开始见效的地方。你会在中等经典数独和几乎每道困难题目里经常用到它,在困难题里,一个三数组往往是重新打开停滞盘面的唯一一步。