数独入门到精通.docx
- 文档编号:9191566
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:48
- 大小:869.03KB
数独入门到精通.docx
《数独入门到精通.docx》由会员分享,可在线阅读,更多相关《数独入门到精通.docx(48页珍藏版)》请在冰豆网上搜索。
数独入门到精通
数独入门到精通
数独快速入门(上篇)2
数独快速入门(中篇)5
数独快速入门(下篇)10
WXYZ形态匹配法(WXYZ-wing)12
三链数删减法(Swordfish)14
XYZ形态匹配法(XYZ-wing)16
XY形态匹配法(XY-wing)19
矩形对角线法(X-wing)24
隐式四数集法(HiddenQuad)25
隐式三数集法(HiddenTriplet)27
隐式数对法(HiddenPair)29
显式四数集法(NakedQuad)31
显式唯一法(NakedSingle)33
隐式唯一法(HiddenSingle)34
区块删减法(IntersectionRemoval)36
显式数对法(NakedPair)38
显式三数集法(NakedTriplet)40
数独快速入门(上篇)
范例一:
在左边第一个九宫格里,哪格可以放数字1,
先看到再第一列和第二列里已经有了数字1,
所以很明显了,除了棕色格子之外,上面两列格子已经不能放1了。
范例二:
换个进阶范例来看看,
已知第一列和第二列不能放1,但仅就第三列而言,2的旁边似乎都可以放1的样子,
但再看看被颜色标示的第三行,
看到第三行有1之后,就知道棕色格子应该放1。
范例三:
来个更进阶点的,想想左上角第一个九宫格里,哪一格可以放1,
再看先看看前两列,应该不能放1,
看被颜色标示的第二行与第三行,又是不能放1,
很显然的,就只有棕色格子能放1。
范例四:
再看看这个重要范例,想想左上角第一个九宫格里,哪格可以放1,
先看看被颜色标示的第二列,
再看看被颜色标示的第二行,
经过分析后可知1要放在这棕色格子。
范例五:
换个轻松点的范例,
看看第一列,数字有哪些,
显而易见的就是缺1。
数独快速入门(中篇)
范例一:
看看这个比上篇难的,想想1能放在哪里呢,
被颜色标示起来的第一列和第一行已经不能放1了,
就左上角的九宫格而言,在红色标示区域似乎是可以摆1的,
但在这里而言,似乎无法决定1放在两格红色区域的哪一格,
所以,可以先看看邻近的九宫格,发现到棕色格子能放1喔,这时候就不用怀疑马上写下1。
范例二:
看看这个有技术性的,想想1能放在哪里,
看到黄色的第一列已经有1,所以不能再放1了,
就中央的九宫格而言,合理的推论,1一定是在第二列中央红色三格的其中之一了,
既然知道第二列的情况,再考虑黄色区域后,
那么可以先确定右方九宫格的1必然放在这棕色格子。
范例三:
由上篇的概念再进阶,考虑这上面三个九宫格,看看能否决定1的位置,
黄色标示的第三行已先被排除,
就第一个九宫格而言,1一定在红色区域,
就黄色标示区域来看,已不能再放1了,
这时可以马上先决定右上九宫格里的棕色格子是能放1的啦。
范例四:
看到这左上方九宫格的第一列,就可以马上知道缺了哪两个数字,
是不是已经看出红色格子不是1就是9了,
但是又看到第二行有1,所以很轻松知道左上棕色格子一定是1,
接下来9就确定在红色格子了。
范例五:
先看看这第一列,
左上方的九宫格里,第一列绝对有1、8、9,
再考虑到第一行黄色区域,看到有8和9,
这下就可确定1绝对放在左上角的棕色格子。
数独快速入门(下篇)
范例一:
来看看这个高级进阶例子,可以先把眼光放在第一列和第一行,
看到在黄色区域里都有2和3,所以此黄色区域已经不能再放2和3了,
这时可以考虑到左上九宫格里的红色格子能放2和3,
再看到第一列和第三列的黄色区域,这黄色区域里已经不能放1,
在左上九宫格里,能放1的只有红色与棕色格子,但红色格子将会被2和3所占据,所以能确定棕色格子必然为1。
范例二:
看看左上方九宫格里,能否由些微线索决定1的位置,
首先,看到第一列后先排除5、6、7,又因左上方九宫格里有2、3、4,再排除这三个数字,这下,在左上方九宫格的第一列,只剩下1、8、9可以填,然后,又看到第一行有8和9,所以,棕色格子必然不会是8和9,那么,就只剩下1可以填入啦!
WXYZ形态匹配法(WXYZ-wing)
WXYZ形态匹配法是更加进阶的形态匹配法,但它将涉及到一个单元格包含4个候选数的情况。
典型的WXYZ形态如下:
其中WXYZ表示拥有4个候选数的单元格,它与WZ在同一区块但不同列中,而与XZ和YZ在不同区块但在同一列中。
满足了这样的形态后,星号所示的单元格中将不能含有候选数Z。
这是因为:
1.如果WXYZ=W,则WZ必为Z,而同一区块中的星号所示的单元格中必然不能填入Z。
2.如果WXYZ=X,则XZ必为Z,而同一列中的星号所示的单元格中不可能再填Z。
3.如果WXYZ=Y,则YZ必为Z,而同一列中的星号所示的单元格中不可能再填Z。
4.如果WXYZ=Z,则同一区块中的星号所示的单元格中不能再为Z。
所以无论WXYZ填什么,星号所示的单元格都不能填入Z。
看一个实例:
在上图中,[A8]=WXYZ,[A9]=WZ,[F8]=XZ,[G8]=YZ。
[A8]和[A9]在同一区块中,而[A8]和[F8]及[G8]在同一列中。
其中,W=2,X=4,Y=6,Z=5。
于是,根据上述分析,[B8]中的候选数5将被删除。
当然也存在WXYZ形态的其他变形:
分析方法也同上。
这时,星号所示的单元格为与WXYZ在同一区块及同一行的单元格,它们将不能填入候选数Z。
再看一个例子:
在上图中,[G3]=WXYZ,[I1]=WZ,[G5]=XZ,[G7]=YZ。
[G3]和[I1]在同一区块中,而[G3]和[G5]及[G7]在同一行中。
其中,W=2,X=3,Y=7,Z=1。
于是,根据上述分析,[G2]中的候选数1将被删除。
下面是其他的一些例子:
三链数删减法(Swordfish)
能够应用三链数删减法的场合真是太少了,下面的例子是在经历无数次尝试后才找到的。
这个方法是X形态匹配法的一种扩展。
这次要考虑的是3行和3列,而不是2行和2列。
先看下图:
观察数字9,在第1列,9只出现在[A1]和[E1],在第4列,9只出现在[E4]和[I4],而在第5列,9只出现在[A5]和[I5];也就是说,对于第1列,第4列和第5列而言,数字9在每列只出现两次,且一共只出现在3行上,即行A,行E和行I。
现在我们把数字9在这几列中所有可能的位置都列举出来:
1.对于第1列,假设[A1]=9,则行A中[A5]必不为9,所以对于第5列,只可能[I5]=9,这时行I中[I4]不能为9,则对于第4列,只有[E4]=9。
2.对于第1列,假设[E1]=9,则行E中[E4]必不为9,所以对于第4列,只可能[I4]=9,这时行I中[I5]不能是9,则在第5列中,只有[A5]=9。
所以在这个例子中,只会有两种可能,就是9要么同时出现在[A1],[E4]和[I5]中,要么同时出现在[A5],[E1]和[I4]中。
无论是哪种可能,行A,行E和行I中都会有9出现,则这三行中的其他单元格上将不能再出现9。
所以[A6]和[E2]候选数中的9将被删除。
总结一下,如果某个数字在某三列中只出现在相同的三行中,则这个数字将从这三行上其他的候选数中删除。
同样,如果某个数字在某三行中只出现在相同的三列中,则这个数字也将从这三列上其他的候选数中删除。
例如
在这个示例中,数字6在行C,行F和行H的位置只在第5列,第7列和第8列上。
这样就满足了使用三链数删减法的条件。
结果是把数字6从第7列的[G7]和[I7]中,以及从第8列的[G8]中删除。
三链数删减法不可能出现在区块中。
XYZ形态匹配法(XYZ-wing)
XYZ形态匹配法很象XY形态匹配法,但不同的是,这次有一个单元格包含3个候选数。
典型的XYZ形态如下:
其中,XYZ表示该单元格有三个候选数,它与YZ在同一区块但不同列中,而与XZ在同一列但不同区块中。
如果满足这样的条件,则星号所示的单元格中一定不能包含候选数Z。
这是因为:
1.如果XYZ=X,则YZ必然为Z。
那么在同一区块中的星号所示的单元格自然就不能为Z。
2.如果XYZ=Y,则XZ必然为Z。
那么与XZ同一列的星号所示的单元格自然也就不能为Z。
3.如果XYZ=Z,则与它同一区块的星号所在的单元格肯定不能是Z。
这样,我们就实现了对星号所在的单元格中候选数的删减。
看一个例子:
在上图中,[D5]=XYZ,[D6]=YZ,[B5]=XZ。
[D5]和[D6]在同一区块中,[D5]和[B5]在同一列中。
其中,X=9,Y=7,Z=6。
根据上面的分析,单元格[F5]中将不能含有候选数6。
当然,XYZ形态也有横向的变形:
分析的方法与之前一致,结果是把候选数Z从星号所示的单元格中删除。
例:
在上图中,[B2]=XYZ,[C3]=YZ,[B9]=XZ。
[B2]和[C3]在同一区块中,[B2]和[B9]在同一行中。
其中,X=2,Y=5,Z=4。
根据上面的分析,单元格[B1]中将不能含有候选数4。
下面是其他的一些实例,可以帮助快速掌握这一技法:
XY形态匹配法(XY-wing)
XY形态匹配法虽然是一个高级的数独技巧,但是应用的机会却还挺多的。
先看看XY形态究竟是怎样的:
上图所示是四个相邻的(也可不相邻)区块。
XY,XZ和YZ分别表示只有两个候选数的单元格,但它们的候选数部分重叠。
可以看到,不管XY最后取什么值,星号所示的位置不可能是Z值。
这是因为:
1.如果XY取X值,则与其同行的XZ只能取Z值,这样星号所示单元格就不能为Z值。
2.如果XY取Y值,则与其同列的YZ只能取Z值,而星号所示的单元格同样不能是Z值。
于是,就可以把Z值从星号所示的单元格中去除。
下面是一个实例:
上图中,单元格[F3]是XY,[F6]是XZ,[I3]是YZ,这三个单元格分别位于不同的区块中。
其中X是3,Y是9,Z是5。
根据我们上面的分析,在单元格[I6]中的候选数5将被删除。
XY形态的第二种表现方式如下:
这时,XY和YZ同在一个区块但不同行中,而XZ和XY在同一行,但在不同区块中。
同样,所有打星号的单元格中不能是Z值。
这是因为:
1.如果XY=X,则XZ=Z。
那么XZ所在的行和区块中就不能再出现Z;
2.如果XY=Y,则YZ=Z。
那么YZ所在的行和区块中就不能再出现Z。
这种情况比第一种XY形态更为常见,看下面这个实例:
在上图中,单元格[D7]是XY,[D2]是XZ,[E8]是YZ,XY和YZ在同一区块中,而XZ在横向的另一区块中。
其中X=4,Y=9,Z=7。
根据上面的分析,则[E2]和[D8]中的候选数7将被删除。
当然还会出现第二种XY形态的变形,即XY和YZ在同一区块但不同列中,而XY和XZ在同一列的不同区块中:
分析方法与之前一样,结果是打星号的单元格中不能出现候选数Z。
例:
在上图中,单元格[I8]是XY,[B8]是XZ,[G9]是YZ,XY和YZ在同一区块中,而XZ在纵向的另一区块中。
其中X=3,Y=2,Z=6。
根据上面的分析,则[A9],[B9],[C9]和[H8]中的候选数7将被删除。
下面是其他的一些应用XY形态匹配法的例子:
矩形对角线法(X-wing)
矩形对角线法是比较高级的谜题解法,应用的机会比较少,但对于有些复杂的谜题也可以有效地删减候选数。
先观察下图
在行B和行G中,数字7都正好出现两次,且都位于第2列和第7列上;也就是说,在行B和行G中,数字7不是填入第2列,就是填入第7列。
而如果在行B中,[B2]=7,则对于行G,[G2]就不能是7,这是因为[G2]和[B2]在同一列上,这样[G7]就一定是7。
反之,如果在行B中,[B7]=7,则对于行G,[G7]就不能是7,7只能在[G2]。
简单地说,只可能有两种情况:
[B2]=7且[G7]=7;或者[B7]=7且[G2]=7。
但无论是哪种情况,第2列和第7列中都肯定会出现数字7,所以这两列中其他的单元格中就不可能再有7。
这样,就可以把7从其他的单元格的候选数中删除了,所以第2列中的[A2]以及第7列中的[C7],[D7]和[E7]的候选数中将不会再有7。
总结一下,如果一个数字正好出现且只出现在某两行的相同的两列上,则这个数字就可以从这两列上其他的单元格的候选数中删除。
当然,同样的情形也会出现在列中,也就是说,如果一个数字正好出现且只出现在某两列的相同的两行上,则这个数字就可以从这两行上的其他单元格的候选数中删除。
例如:
可以看到,在第1列和第7列上,数字9出现且只出现在行C和行G上,也就是说,在第1列中,要么[C1]=9,要么[G1]=9;而对于第7列,要么[C7]=9,要么[G7]=9。
而对于这两列只有两种情况,[C1]=9且[G7]=9;或者[C7]=9且[G1]=9。
无论是上述哪种情况,行C和行G上都会有数字9出现,则这两行上其他的单元格中不能再有9。
所以行C上的[C4]和[C5]以及行G上的[G2]和[G5]候选数中的9将被删除。
矩形对角线法不可能出现在区块中。
隐式四数集法(HiddenQuad)
这是一个极少用到的方法,因为它的条件比较难以满足。
与隐式三数集法类似,这次需要4个数字和4个单元格。
即当某个4个数字只出现在某行,列或区块的4个单元格中,且每个单元格中至少包含有其中的2个数字时,则可以把其他数字从这4个单元格的候选数中删除。
与显式四数集法类似,举例来说,对于四数集{1,2,4,5},如果某行,列或区块中的四个单元格的候选数集依次为以下情况时,都符合隐式四数集的条件:
{1,2,3,4,5}{1,2,4,5,8}{1,2,4,5}{1,2,4,5,9},或
{1,2,4}{1,5,8}{2,3,5}{4,5,7},或
{4,5}{1,2,4,6}{2,5,8}{1,2,3,4,5},或
{1,2,3,5}{1,5}{2,4,8}{4,5,9},或
......
象这样的组合可能会有很多。
具体分析先看下图:
在行A中,四数集{2,4,8,9}中的任何数字都只出现在[A4],[A6],[A7]和[A8]的候选数中,其中[A4]包含了数字2和4;[A6]包含了数字2,4和8;[A7]包含了数字4和9,而[A8]包含了数字2,8和9。
这样,就符合了隐式四数集法的基本条件,不在这个四数集内的数字将从这四个单元格的候选数中删除。
当然,我们也可以看到,即使不用隐式四数集法,由于[A3]和[A5]形成了明显的显式数对,同样也可用显式数对法对该行其他单元格候选数的删减。
这里,我们为了讲解隐式四数集法,所以优先使用该方法。
这也说明能应用这种方法的机会很少,因为经过很多较简单方法对候选数进行多番删减以后,已经较难满足隐式四数集的基本条件。
同样,下面的谜题,我们本来可以用显式数对法来解决,但这里暂时优先使用隐式四数集法:
在第6列中,四数集{1,4,8,9}中的任何数字都只出现在[A6],[D6],[E6]和[I6]的候选数中,其中[A6]包含了数字1和4;[D6]包含了数字1,8和9;[E6]包含了数字4和9,而[I6]包含了数字8和9。
这样,就符合了隐式四数集法的基本条件,不在这个四数集内的数字将从这四个单元格的候选数中删除。
当然,在区块中也可应用隐式四数集法,因为鲜少有这样的例子,且与上面介绍的行与列中的隐式四数集类似,所以这里不再举例。
隐式四数集法只影响包含隐式四数集的四个单元格,与隐式数对法相似,删减的结果是把隐式四数集转换成显式四数集,并可能为使用其他的候选数删减法创造条件。
这个方法一般在解决较为复杂的谜题时才有可能用到。
隐式三数集法(HiddenTriplet)
与隐式数对法类似,这次需要3个数字和3个单元格。
即当某个3个数字只出现在某行,列或区块的3个单元格中,且每个单元格中至少包含有其中的2个数字时,则可以把其他数字从这3个单元格的候选数中删除。
与显式三数集法类似,举例来说,对于三数集{2,4,5},如果某行,列或区块中的三个单元格的候选数集依次为以下情况时,都符合隐式三数集的条件:
{2,4,5,8}{1,2,4,5}{2,3,4,5,9},或
{2,4}{2,3,5}{4,5,7},或
{4,5}{2,5,8}{1,2,3,4,5},或
{1,2,5}{2,4,8}{4,5,9},或
......
具体分析先看下图:
在行H中,三数集{5,8,9}中的任何数字都只出现在[H1],[H3]和[H5]的候选数中,其中[H1]包含了数字5和9;[H3]包含了数字8和9;而[H5]中包含了数字5和8。
这说明数字5,8和9只能填入这三个单元格中,所以其他候选数不能出现在这三个单元格中。
因此数字1和3将从[H1]的候选数中删除,而数字3和4将从[H3]的候选数中删除。
下面是隐式三数集在列中的例子:
在第7列中,三数集{3,7,9}中的任何数字都只出现在[F7],[G7]和[H7]的候选数中,其中[F7]包含了数字3和7;[G7]包含了数字3和9,而[H7]包含了数字3,7和9。
这样,就符合了隐式三数集法的基本条件,不在这个三数集内的数字将从这三个单元格的候选数中删除。
隐式三数集还有可能发生在区块内:
在起始于[G7]的区块中,三数集{3,6,7}中的任何数字都只出现在[G8],[G9]和[H8]的候选数中,其中[G8]包含了数字3,6和7;[G9]包含了数字3和7,而[H8]包含了数字3和6。
这样,就符合了隐式三数集法的基本条件,不在这个三数集内的数字将从这三个单元格的候选数中删除。
隐式三数集法属于难度比较高的方法,在处理一般谜题时较少碰到。
隐式三数集法只影响包含隐式三数集的三个单元格,与隐式数对法相似,删减的结果是把隐式三数集转换为显式三数集,并可能为使用其他的候选数删减法创造条件。
隐式数对法(HiddenPair)
对比显式数对法,隐式数对法也需要在同一行,列或区块中寻找两个单元格,而这两个单元格上都包含有一个数对(两个数字),且这个数对不会出现在该行,列或区块的其他单元格上。
然而,应用隐式数对法却要困难得多,因为它与显式数对法不同的是,包含有数对的单元格的候选数中可能还包含有其他的数字。
先看下图:
可以看到,在行A中,数对{3,6}只出现在[A4]和[A8]的候选数中,也就是说,数字3和6不可能再出现在该行的其他单元格中,这是因为这两个单元格中必然只能填入3和6,否则该行将缺少这两个数字。
这样,如果[A4]=3,则[A8]=6;反之,如果[A4]=6,则[A8]=3,不会再有其他的情况。
所以我们可以放心地把其他的数字从这两个单元格的候选数中删除。
下面是隐式数对在列中的例子:
在第1列中,数对{2,9}只出现在[G1]和[I1]的候选数中,这样就符合了上面所述的隐式数对的条件,所以可以很安全地把其他数字从这两个单元格的候选数中删除,使这两个单元格中只保留了显式数对{2,9}。
在区块中也是如此:
在起始于[D4]的区块中,数对{2,8}只出现在[E6]和[F6]的候选数中,所以这两个单元格上其他的候选数将被删除,而只保留了数对{2,8}。
总结一下,隐式数对的条件是,在同一行,列或区块中,如果一个数对(两个数字)正好只出现且都出现在两个单元格中,则这两个单元格的候选数中的其他数字可以被删除。
隐式数对不象显式数对法那么容易发现,所以在解题时需要相对的耐心和细心。
与显式数对法不同的是,隐式数对法只影响出现隐式数对的单元格,而不影响其所在行,列或区块的其他单元格,这是因为这些其他的单元格中都不包含有这个数对。
但通过隐式数对法删减了候选数后,隐式数对将转化为显式数对,可能会为其他的行,列或区块应用各种候选数删减法创造条件。
显式四数集法(NakedQuad)
显式四数集法比较少见,如果你已经对显式三数集法比较了解,则对显式四数集法也会很快掌握。
先举个例子,对于数字集{1,2,4,5},如果在某行,列或区块中有4个单元格的候选数分别为下面几种情况时,都可应用显式四数集法,即4个单元格的候选数集可以分别为:
{1,2,4,5}{1,2,4,5}{1,2,4,5}{1,2,4,5},或
{1,2,4}{1,4,5}{2,5}{1,2},或
{1,2,4,5}{2,5}{2,4,5}{1,2,4,5},或
{2,5}{4,5}{1,2,5}{1,2,4},或
{1,2,5}{1,2,4,5}{1,2,4,5}{2,4},或
......
这样的组合情况可以很多。
也就是说,要形成显式四数集,则必须要有4个在同一行,列或区块中的单元格,每个单元格中至少要有2个候选数,且它们的所有候选数字也正好都是一个四数集的子集。
由于这个四数集中的4个数字正好可以分别填入这4个单元格中,所以该行,列或区块中其他的单元格中不可能再填入这4个数字。
但要注意的是,下面的这种情况不是显式四数集:
{1,2,4,5}{2,4}{2,5}{2,4,5}
其中{2,4}{2,5}和{2,4,5}可应用显式三数集法,所以第一个候选数集{1,2,4,5}将只能剩下候选数1,这时就可应用显式唯一法了。
看下图:
很明显,在行D中,[D1],[D4],[D6]和[D8]中分别包含了候选数集{3,5,6},{2,5,6},{2,5,6}和{3,5,6},即分别都是四数集{2,3,5,6}的子集。
这样在行D中,数字2,3,5和6就只能填入这4个单元格中,所以[D3]和[D7]的候选数中将不能包含这几个数字。
下面是显式四数集在列中的例子:
在第9列中,[C9],[D9],[E9]和[G9]中分别包含了候选数集{1,7,8},{1,8},{6,7,8}和{6,7,8},即分别都是四数集{1,6,7,8}的子集。
这样数字1,6,7和8就不能填入该列中除这四个单元格之外的单元格中,所以[A9]和[B9]的候选数中将不能出现这四个数字。
同样,显式四数集也可以出现在区块中:
在起始于[A7]的区块中,[B9],[C7],[C8]和[C9]中分别包含了候选数集{6,7},{1,6,8},{7,8}和{1,6,7,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 入门 精通
