直观显性数组
Direct Naked Subset
最后更新于
Direct Naked Subset
最后更新于
说完了隐性数组,下面我们来学习显性数组的部分。
如图所示,这一次我们把思路转过来,不用数字作排除的逻辑,而是使用唯一余数的数数的逻辑。
首先看单元格 r1c7
,我们可以直接确定的是,它只能填入 3 或 8 的其中一个数。而同列还有一个单元格 r9c7
也只能填入 3 或 8。
由于 r19c7
同列,所以它们不能填入相同的数字。所以就会出现此 3 彼 8 的排列。但是,不论是哪个数填在哪一个单元格,c7
的别处都没有机会填 3 或者 8。显然,r4c7
也不例外。所以,r4c7 <> 8
。
得到这一点后,我们再来通过宫排除,可以得到 b6
的数字 8 只能填入到 r4c9
,所以 r4c9 = 8
。
我们把这个技巧称为显性数对(Naked Pair),指的是 r19c7(38)
。
下面我们来看下规格为 3 的逻辑。
我们先看 r1c5
。这个单元格里可以填入的数字只有 1、2、6,别的数字在所在的行、列、宫里都有出现过了。其次再来看 r3c4
。恰好,r3c4
也只能是 1、2、6。r3c5
也是如此。
由于 {r1c5, r3c45}
同一个宫里,所以不能填入重复的数字。而它们三个单元格都只能填 1、2、6,所以内部只能出现 1、2、6 三种数字的排列。我们拿出一个数字填入到一个格子里,然后在剩余的两个数字里选一个填入到第二个格子里,那么最后剩下一个数直接填入进去,三个单元格就会被 1、2、6 全部占满。
当得到这一点后,我们就可以知道的是,r3c6
也与这三个单元格同一个宫,不能填入相同的数。而这个宫里,数字 1、2、6 的填入机会已经给了 {r1c5, r3c45}
了,所以别的单元格都没有任何的机会填入它们。于是,r3c6 <> 126
。
接着,我们可以通过这一点得到,r3c6
只能填入 8。
我们把这个技巧称为显性三数组(Naked Triple)。
和前面隐性四数组描述的内容一致,显性四数组(Naked Quadruple)的规格已经比较大了,所以在平时做题的时候很难能够遇到这样的结构,所以带着大家看一下就行了。
如图所示。观察 b7
,我们通过唯一余数的操作可以依次得到 r7c3
只能是 4、6、7、9,r8c2
只能是 4、9,r8c3
只能是 4、7、9,r9c3
只能是 4、6、7。
虽然这四个单元格的可能填数是“参差不齐”的,但是可以得到的是,在 b7
里,数字 4、6、7、9 的排列只能在 {r8c2, r789c3}
这四个单元格里。
当我们得到这一点后,我们就可以知道,6 这个数在 c3
的别处都没有机会填入(当然,b7
的别处也一样)。所以,我们就有了 r6c3 <> 6
的结论。
然后,我们再根据宫排除得到 b4
的宫排除结论:r6c2 = 6
。
这里的 {r8c2, r789c3}(4679)
就是我们要说的显性四数组了。
至此我们就把显性数组的逻辑讲完了。