《数独高级技巧2公开课.docx》由会员分享,可在线阅读,更多相关《数独高级技巧2公开课.docx(45页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 唯一数 Last Value 适用情况:当某行、某列或某宫中已经出现八个不同数字时,最后一格即剩下还未出现过的第九个数。图中这一行已经出现数字1、2、3、4、5、6、7、8,所以余下的星号格为9。 实际应用:第一行已经出现了1、2、4、5、6、7、8、9,所以星号格为3。 宫摒除 Hidden Single in Box 适用情况:观察某一个数字A,根据数独规则,在同行、列、宫内无重复数字,若一格是A,则其所在行、列、宫都不会再有A,若以此得出某一宫内数字A仅剩一个可能位置,则可以判断这格就是A。图中对于第一宫,由于四个A的影响,第一宫只有一个地方可能填A,即星号处。 实际应用:观察第七宫和
2、数字1,由于r1c3, r5c2, r8c8中数字1的影响,第七宫的1只能在r9c1。 行列摒除 Hidden Single in Row/Column 适用情况:观察某一个数字A,根据数独规则,在同行、列、宫内无重复数字,若一格是A,则其所在行、列、宫都不会再有A,若以此得出某一行或列内数字A仅剩一个可能位置,则可以判断这格就是A。图中对于第一行,由于四格受A的影响,第一行只有一个地方可能填A,即星号处。 实际应用:观察第一行和数字3,由于r8c1、r5c5、r6c9、r9c6中数字3的影响,第一行的3只能在r1c3。 唯一余数 Naked Single 适用情况:观察某一格,根据数独规则,
3、一格与其所在的行列宫没有重复数字,点算这格所在行列宫已经出现过的数字,若已经出现8个不同的数字,则这格就是第9个没有出现过的数。对于星号格,其所在行(第一行)已经出现2346,所在列(第五列)已经出现15,所在宫(第二宫)已经出现2678,即12345678均出现了,故星号格为9。 实际应用:观察星号格,其所在行列宫已经出现过12345689,所以它只能是7。 宫摒除区块 Pointing 适用情况:在进行宫摒除时,发现某数在某宫可能位置不止一个,但是可能位置处在同行或同列,则可以排除相应行或列中除他们外其他格的该数。数字5对第二宫摒除发现第二宫5的可能位置是2个星号格,虽然目前不能确定是哪一
4、格,但可以确定的是第三行除了星号格外其他格(用短横线标示)一定不是5。如下图所示: 实际应用:观察数字6,对第七宫进行摒除,得到第七宫的6在星号两格(同在第七行),故第七行除星号格外不能再有6。继而可以得到第八宫的6只能在r8c6。 行列摒除区块 Claiming 适用情况:在进行行列摒除时,发现某数在某行或某列可能位置不止一个,但是可能位置处在同宫,则可以排除相应宫中除他们外其他格的该数。A对第一行摒除发现第一行A的可能位置是2个星号格,虽然目前不能确定是哪一格,但可以确定的是第二宫除了星号格外其他格(用短横线标示)一定不是A。如下图所示: 实际应用:观察数字4,对第四行进行摒除,得到第四行
5、的4在星号两格(同在第六宫),故第六宫除星号格外不能再有4。如下图所示:数字4对第九列摒除,第九列的4只能在r4c9。 摒除数对 Hidden Pair 适用情况:与宫摒除、行列摒除相同,只是同时观察2个数,且这两个数恰好被锁定在一行、一列、一宫的两个相同位置。图中无论是字母A还是字母B在第一宫可能的位置都是星号格,故这两格不能再有除A、B外的其他数字。 实际应用:为了阐述摒除数对,下面这个例子同时涉及到宫摒除数对(第一步)和行列摒除数对(第二步),如果希望找更直接的例子可以看数对法的应用讨论。数字2和3同时对第六宫摒除,得到第六宫的2和3只能在星号处。故星号两格除了2和3不再有其他可能的数。
6、数字1和4同时对第五行摒除,其中r5c7,我们之前已经得到它可能的候选数只有2或3,自然不能有1和4,第五行的1和4只能在星号处。故星号两格除了1和4不能会再有其他可能数字。此时数字7对第五行摒除,第五行的7只能在星号处。 唯余数对 Naked Pair 适用情况:与唯一余数观察方法相同,只是同时观察两格,且这两格所剩可能填写的数字均为2个且组合相同。图中星号所示两格可能的数字均只剩下8和9,由于他们同在第一宫,称其为89数对,继而可以删除它们同在的第一宫内其他格的候选数8和9。 实际应用:为了阐述唯余数对,下面这个例子用到了3次唯余数对和1次摒除数对,方便大家对两者进行对比。分别来看黑色星号
7、的两格和白色星号的两格,通过点算他们所在行列宫已经出现过的数字,可以发现黑色星号两格剩余可能数字均为59,计为59数对;白色星号两格剩余可能数字均为57,计为57数对。点算黑色星号可能的数字,我们发现在其行列宫已经出现过2,3,4,6,7,而第一步得到的59数对(蓝色所示)因为同在第三行,故第三行其他格不能再有5或9,黑色星号格可能数字只剩下1和8;同样的,看白色星号,其所在行列宫已经出现过的数字有2,3,4,5,6,9,第一步得到的57数对(紫色所示)同在第七行,故第七行的其他格内不能再有5或7,白色星号格可能数字只剩1和8。由于黑色和白色星号格同在第六列,且可能候选均为1和8,则称其为18
8、数对,第六列除他们俩外其他格都不能是1或8。数字1和3对第五行摒除,得到第五行的1和3只能在星号两格(摒除数对)。数字4对第五行摒除,得到r5c8=4。 三链数 Triplet 适用情况:与摒除数对和唯余数对观察方法相同,只是拓展到3个数或3格。这三格需属于同行或同列或同宫。 实际应用:下面这个例子同时用到了摒除三链数(Hidden Triplet)和唯余三链数(Naked Triplet),并会把前面的区块和唯余复习一下。点算星号3格,自左往右,可能的数字依次为249,249,29,且它们同时处于第五行,则第五行的其他格不能再有2、4、9。数字2,7,8对第四宫摒除,得到第四宫的2,7,8只
9、能在星号3格。数字4对第四宫摒除,得到第四宫的4只能在星号格。r2c1唯余解9。 四链数 Quad 适用情况:与摒除数对、唯余数对、三链数观察方法相同,只是拓展到4个数或4格。这四格需属于同行或同列或同宫。有的地方会把数对、三链数、四链数统称为数组(Subset),说明它们的本质都是一样的。四链数一般比较少用到,从前面的题目可以发现其实摒除数组和唯余数组是存在互补的关系,比如一个宫有5个未填数,其中有一个摒除数对的话相对就有一个唯余三链数。所以四链数为什么比较少碰到大家也可以知道了吧。 实际应用:这个例子可以说是整个数组系统的总结,包括前面介绍的数对和三链数,当然不会少本节介绍的四链数。点算黑
10、色星号3格,为237三链数;点算白色星号3格,为378三链数。点算星号4格,它们可能的数只有四个:1,2,4,6。或者可以用3,7,8,9对第九宫摒除,如下图:点算星号3格,为379三链数。数字1,3对第五行摒除,得到第五行的1,3只能在星号2格。数字7对第五行摒除,得到r5c3=7。 四角对角线/矩形摒除 X-Wing *注:四角对角线是日本书里面对X-Wing的称呼,国内的书和网站称矩形删除或者X翼之类的比较多,一般还是直接用英文的X-Wing即可。 适用情况:观察某一个数字A,若在某两行(列)中数字A只可能存在于某相同的两列(行),则这两列(行)的其他格都不能有A。图中,第二行和第五行的
11、A只能在第二列和第五列,对于第二行和第五行的A可能有以下两种排列:不论是哪一种情况,第二列和第五列其他格都不能是A。 实际应用:数字1分别对第三列和第八列摒除,得到第三列的1在黑色星号2格,第八列的1在白色星号2格。所以第三行和第九行除他们外的其他格都不能是1。点算星号格,本来还剩1和3的可能,其中1已经被X-Wing摒除,故r3c1=3。*注:有的地方会把行列区块归结到X-Wing里面,例如我们用之前行列区块的例子来看。数字4对第三宫摒除,得到第三宫的4在星号格。数字4对第九宫摒除,得到第九宫的4在星号格。第三宫和第九宫的4都在第七列和第八列,故第七列和第八列除它们外的其他格都不含4。从描述
12、中聪明如你们应该能够发现一些差别,这里就不多做解释了。 三链列 Swordfish 适用情况:与X-Wing类似,观察某一个数字A,若在某三行(列)中数字A只可能存在于某相同的三列(行),则这三列(行)的其他格都不能有A。图中第2、5、8行的数字A均只在2、5、8列,故可以删除2、5、8列除他们外其他格的候选数A。 实际应用:观察第1、5、9列数字4可能的位置恰好在第2、6、8行,故2、6、8行除他们外的其他格不含4。点算星号格可能的数,其中4已经被Swordfish排除,故r8c6=8。 四链列 Jellyfish 适用情况:与Swordfish类似,只是再进一步扩展到四行、四列。观察某一个
13、数字A,若在某四行(列)中数字A只可能存在于某相同的四列(行),则这四列(行)的其他格都不能有A。 实际应用:观察第3、4、6、7列数字3可能的位置恰好在第1、5、8、9行,故1、5、8、9行除他们外的其他格不含3。点算星号格可能的数,其中3已经被Jellyfish排除,故r1c5=8。 摩天楼 Skyscraper 适用情况:当数字A在某两行(列)均只存在两个可能位置,且其中一侧两数存在于同列(行)时,则可对另一侧两格共同影响格的数字A删除。左图:第二列和第五列的数字A可能的位置均只有2个,其中蓝色A处于同一行,故可以删除另一侧紫色A的共同作用格(星号所示)的A。右图:第二行和第八行的数字A
14、可能的位置均只有2个,其中蓝色A处于同一列,故可以删除另一侧紫色A的共同作用格(星号所示)的A。原理:如果你之前已经学习过链的入门,可以用链的观点来看。左图:r2c2=r5c2-r5c5=r1c5 - r1c1,r1c3,r2c4,r2c6A。亦可进行如下推理:根据r2c2是否是A分为2种情况1)r2c2=A;2)r2c2!=A - r5c2=A - r5c5!=A - r1c5=A。即r1c5和r2c2至少有一个是A,故可以删除他们共同影响的r1c1,r1c3,r2c4,r2c6的候选数A。右图:r2c7=r2c2-r8c2=r8c8 - r1c8,r3c8,r7c7,r9c7A。(与左图类
15、似,恕不赘述) 实际应用:数字7对第一、四行摒除,各有2个可能位置,且一侧均在第五列,另一侧共同作用格(白色星号所示)可以排除7的可能。第一宫的7只能在r1c1。 双线风筝 Two Strings Kite 适用情况:当数字A在一行、一列均只有2个可能位置,行的一个端点和列的一个端点属于同一宫,则可以删除另两个端点的共同作用格。图中第一行的A可能位置在r1c3和r1c7,第一列A的可能位置在r3c1和r7c1,他们各自的一个端点r1c3和r3c1同属于第一宫,所以可以删除另外两个端点r1c7和r7c1共同作用格r7c7的候选数A。用链表示:r1c7=r1c3-r3c1=r7c1 - r7c7!
16、=A 实际应用:第一列和第九行的4都只有两个位置,且r7c1和r9c3同属于第七宫,故可以删除r2c1和r9c6共同影响的r2c6的候选数4。星号处根据盘面还剩2和4的可能,其中4已被双线风筝删除,得唯余解2。 多宝鱼 Turbot Fish 适用情况:当数字A在一行(列)和一宫中均只有2个可能位置,且其中行的一个端点和宫的一个端点存在于同一行(列),则可以删除另两两个端点共同作用格的候选数A。图中第二列和第三宫字母A都只有2个可能位置,其中第二列的一个端点r1c2和第三宫的端点r1c7同属于第一行,故可以删除另两个端点r7c2和r3c8共同影响的r7c8的候选数A。用链表示r3c8=r1c7
17、-r1c2=r7c2 - r7c8!=A 实际应用:图中第七宫的2有两个可能位置r7c3和r9c1,第七列的2可能在r4c7和r9c7,其中r9c1和r9c7同属于第九行,所以可以删除另两个端点r7c3和r4c7共同影响的r4c3的2。第三列的2只能在r7c3(其中r4c3的2由Turbot Fish删除)。 X环 X-Cycle 适用情况:当盘面中某个数字形成形如下图的情况:(图为2-2-2形式的Swordfish,也属于X-Cycle的特殊类型)数字A在第一行、第四行、第七行都只有2个可能位置,可以发现这三行的A有两种排列的可能:1)r1c2,r4c5,r7c8=A;2)r1c5,r4c8
18、,r7c2=A。不论是哪一种情况。第二列、第五列、第八列除它们外的其他格都不能有A。用链表示:r1c2=r1c5-r4c5=r4c8-r7c8=r7c2-r1c2。因为形成环后,之前所有弱链上的两端点都变成了强关系(在链的逻辑中已经提到对于a=b-c=d可以的得到a=d),所以X-Cycle的删减范围一般都比较大。我们也可以把前面的长链分为3段来看,效果是一样的:1)r1c2=r1c5-r4c5=r4c8-r7c8=r7c2,可删除r1c2和r7c2共同影响的第二列其他格的候选数A;2)r4c5=r4c8-r7c8=r72c-r1c2=r1c5;3)r7c8=r7c2-r1c2=r1c5-r4
19、c5=r4c8。 实际应用:(第五宫的两个星号格可能的候选数均只有25,为25数对)观察数字5,在第五宫,第二列,第九行均只有两个可能位置,且他们恰好形成环,数字5的排列有两种可能情况,一种是白色星号为5,或者黑色星号为5,则可以删除他们共同影响格的候选数5,如下图所示。用链表示:r4c2=r7c2-r9c1=r9c6-r5c6=r4c5。由于不能为5,星号处只能是6。 X链 X-Chain 适用情况:与X-Cycle类似,同样也是偶数个节点,不过没有成环。之前涉及单数的如X-Wing、Skyscraper都是X-Chain的一部分。 实际应用:这是一个6节点的X-Chain,观察第三列、第四
20、列、第九列数字1的可能位置,只能在星号标注格,且有2种排列情况,黑色星号成立或白色星号成立,不论哪一种成立,两端点r3c4和r2c9共同影响的格内不能为1。用链表示:r3c4=r5c4-r5c3=r7c3-r7c9=r2c9 - r2c5,r3c8!=1。第三宫的1只能在r2c9。 Group X-Chain 适用情况:就像之前讲过的区块一样,需要把几格看作一组,链也存在这样的情况,我们将其称为Group X-Chain。它与X-Chain类似,只是某个部分需要把几格当作一个整体来看。 实际应用:观察第三列和第五列,9可能的位置有5个,若将r7c3和r8c3看作一个整体的话,可之前提到的skyscraper是一样的。其中一端r2c3和r2c5同属于第二行,所以可以删除另一端r7c3,r8c3,r8c5共同作用格r8c1的候选数9。用链表示:r7c3,r8c3=r2c3-r2c5=r8c5 - r8c1!=9。第七宫的9在第三列。r2c3唯余解8。