入门 约 7 分钟
一个数字,在整条线上只剩一个家
那一格看上去还没定,好几个数字都放得进去。但对其中某一个数字来说,这是整条线上最后一个位置。
一句话版本
隐性唯一数,是某个数字在一个单元(一行、一列或一宫)里只剩一个合法位置。那一格只能填这个数字——哪怕它还有别的候选。
陷阱就在名字里。这一格里其他八个位置已经全被盘面上已有的数字挡掉了。活下来的那一格看上去毫不起眼,通常是你最后才会去看的地方。
它是怎么藏起来的
拿一个数字,拿一个宫。把九格走一遍。六格已经填了数字,直接无关。剩下三格里,有两格因为同行或同列已经出现这个数字,被挡掉了。
只剩一格。那就是隐性唯一数。
现在看这一格自己的候选表,可能写着「2、5、8」。这三个候选没有一条告诉你这格已经解出来了。信息不在这一格里,而在别处都放不了那个 5 这件事上。
这个不对称,是初学者天天漏掉它的原因。裸单会喊:只有一个候选,填它。隐性唯一数一声不吭,你不按数字去数,就听不见。
真实盘面
这个判断很窄,也很好核对:在中上宫里,5 只有一个家,R2C6。
- 这个宫还剩三个空格:R2C4、R2C5、R2C6。
- R2C4 出局,因为第 4 列已经有 5 了。
- R2C5 出局,因为第 5 列已经有 5 了。
- R2C6 是这个宫里唯一还放得下 5 的格子。
所以 R2C6 = 5——不管这一格本来还能是什么。R2C6 里另外那两个候选,从头到尾没被用上。
怎么扫
按数字扫,不要按格子扫。这个习惯决定了你是能找到隐性唯一数,还是对着盘面干看。
- 先取一个数字,从宫开始。 宫是最小的单元,约束最紧,隐性唯一数最先在那里冒出来。拿着 5 去逐个宫问:还剩几个空格放得下 5?
- 只数,不解。 你不是在评估候选数,你只是在问「这个数字还能放哪」。这个问题便宜得多。
- 再扫行,再扫列。 一个数字在所有宫里都被堵死,仍可能在某一行里藏着。行列各九格,慢一些,但能捞到宫漏掉的。
- 把一个数字走完。 还有宫没问完,就别换数字。1 到 9 走完一轮,再从头开始——因为每填一个数,下一轮的答案就变了。
- 重新起一轮。 你写下的每一个数字,都可能在两三个数字之后再造出一个隐性唯一数。扫盘不是一遍,是一个循环。
一个好用的顺序:九个数字先把宫扫完,然后只对着还没解决的数字扫行列。多数题目两轮之内就散了。
隐性唯一数 vs 裸单
两者是镜像,区别在方向:
- 裸单是从格子找出来的:一格,只剩一个候选。
- 隐性唯一数是从数字找出来的:一个数字,只剩一个位置。
两者都给出必然的填法,同一格也可能同时满足两种描述。真出现这种情况,只是同一个动作被你找到了两次,是好迹象,不是多余。
实际差别在成本。裸单要求你知道每一格的完整候选表;隐性唯一数只要求你一次盯一个数字。所以它更便宜,简单题目上你甚至可以不写任何候选数就解完。
陷阱:一个家,不是一个候选
最常见的错误,是把「这个宫里这个数字只能放这儿」当成「这格只能填这个数字」。不是的。那一格可能有三四个候选,你只被允许得出一个结论:这个数字填在这儿。
第二个陷阱是只扫宫。宫里的隐性唯一数最好找,于是大家扫到宫就停了。可是一个数字可能在所有宫里都被堵死,却仍是一行里的隐性唯一数——一行跨三个宫,真正起作用的排除可能来自你压根没看的那个宫。
还有第三个更安静的陷阱:这个数字必须恰好只有一个家。如果你在一个宫里找到两个都能放它的格子,你什么也没找到——那是「两个家」,是数对和 X-Wing 的原料,不是一个填法。
用在哪
隐性唯一数是所有简单、中等题目的主力,而且从来不会过时。就算在高级盘面上,最后撬开题目的那一步,也常常是三轮排除之前才出现的那个隐性唯一数。
它也值得专门练。掐个表,拿一个数字,把每个宫、每一行都扫一遍,看耗尽它要多久。这项技能可以直接迁移:扫一张难盘的第一步,就是同一套动作。
常见疑问
什么是隐性唯一数?
某个数字在一行、一列或一宫里只剩下一个位置能放。那一格本身可能还有好几个候选,但对这个特定的数字来说,已经没有别的去处。
为什么叫「隐性」?
因为那一格看起来没解完。裸单表现为「一格只剩一个候选」,而隐性唯一数藏在一格可能还有三四个候选的格子里,格子本身不会告诉你任何事。你只能一个数字一个数字地数出来。
找隐性唯一数需要把候选数全填出来吗?
不需要,这正是它的价值。只要盯住一个数字,看它在某个单元里还能放哪几格就行。所以隐性唯一数是第一个「还没动笔就能用」的技巧。
如果同一格既是裸单又是隐性唯一数呢?
那就说明两者结论一致,可以放心填。如果两者给出不同答案,那不是技巧失灵,是前面某一步填错了。