数独方法及技巧(小图)_第1页
数独方法及技巧(小图)_第2页
数独方法及技巧(小图)_第3页
数独方法及技巧(小图)_第4页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数独技巧 (Sudoku Strategies)数独快速入门(上篇)数独快速入门(中篇)数独快速入门(下篇)数独快速入门(上篇)范例一:在左边第一个九宫格里,哪格可以放数字,先看到再第一列和第二列里已经有了数字,1所以很明显了,除了棕色格子之外,上面两列格子已经不能放了。范例二:换个进阶范例来看看,2已知第一列和第二列不能放,但仅就第三列而言,的旁边似乎都可以放的样子,但再看看被颜色标示的第三行,3看到第三行有之后,就知道棕色格子应该放。范例三:来个更进阶点的,想想左上角第一个九宫格里,哪一格可以放,4再看先看看前两列,应该不能放,看被颜色标示的第二行与第三行,又是不能放,5很显然的,就只有棕

2、色格子能放。范例四:再看看这个重要范例,想想左上角第一个九宫格里,哪格可以放,6先看看被颜色标示的第二列,再看看被颜色标示的第二行,7经过分析后可知要放在这棕色格子。范例五:换个轻松点的范例,8看看第一列,数字有哪些,显而易见的就是缺。数独快速入门(中篇)范例一:9看看这个比上篇难的,想想能放在哪里呢,被颜色标示起来的第一列和第一行已经不能放了,10就左上角的九宫格而言,在红色标示区域似乎是可以摆的,但在这里而言,似乎无法决定放在两格红色区域的哪一格,11所以,可以先看看邻近的九宫格,发现到棕色格子能放喔,这时候就不用怀疑马上写下。范例二:看看这个有技术性的,想想能放在哪里,12看到黄色的第一

3、列已经有,所以不能再放了,就中央的九宫格而言,合理的推论,一定是在第二列中央红色三格的其中之一了,13既然知道第二列的情况,再考虑黄色区域后,那么可以先确定右方九宫格的必然放在这棕色格子。范例三:14由上篇的概念再进阶,考虑这上面三个九宫格,看看能否决定的位置,黄色标示的第三行已先被排除,15就第一个九宫格而言,一定在红色区域,就黄色标示区域来看,已不能再放了,16这时可以马上先决定右上九宫格里的棕色格子是能放的啦。范例四:看到这左上方九宫格的第一列,就可以马上知道缺了哪两个数字,17是不是已经看出红色格子不是就是了,但是又看到第二行有,所以很轻松知道左上棕色格子一定是,18接下来就确定在红色

4、格子了。范例五:先看看这第一列,19左上方的九宫格里,第一列绝对有、,再考虑到第一行黄色区域,看到有和,20这下就可确定绝对放在左上角的棕色格子。数独快速入门(下篇)范例一:来看看这个高级进阶例子,可以先把眼光放在第一列和第一行,21看到在黄色区域里都有和,所以此黄色区域已经不能再放和了,这时可以考虑到左上九宫格里的红色格子能放和,22再看到第一列和第三列的黄色区域,这黄色区域里已经不能放,在左上九宫格里,能放的只有红色与棕色格子,但红色格子将会被和所占据,所以能确定棕色格子必然为。范例二:23看看左上方九宫格里,能否由些微线索决定的位置,首先,看到第一列后先排除、,又因左上方九宫格里有、,再

5、排除这三个数字,这下,在左上方九宫格的第一列,只剩下、可以填,然后,又看到第一行有和,所以,棕色格子必然不会是和,那么,就只剩下可以填入啦!?直观法 (Direct Elimination Techniques)?候选数法 (Candidates Elimination Techniques)直观法 (Direct Elimination Techniques)经常在报章杂志上看到的数独谜题,一般就算再难都可以用直观法 来解决。它不需要象候选数法(Candidates Elimination Techniques)那样在每个空白的单元格中用铅笔填上一大堆候选数。你只要有相24对锐利的眼光和一定

6、的逻辑分析能力,就可以准确地把空余的数字逐个填出来。实际上,直观法 就是对数独游戏规则的充分利用。虽然它并不如 候选数法 (Candidates Elimination Techniques)那样强大, 但通常要想体会解决数独谜题的乐趣,使用直观法 却是不二之选。直观法 (Direct Elimination Techniques)具有以下的特点:轻松上手。即便是数独新手,在拿到谜题的一刹那,就可以用直观法 来解题了。无需辅助。在纸上解题时一般只需要一支钢笔就可以。因为是通过推理和逻辑分析来确定哪个格填哪个数,或是哪个数填在哪个格里,所以基本不需要猜测。容易掌握。 对于 直观法 (Direct

7、 Elimination Techniques)中应用的各种算法,可以很快掌握并应用于实际中。相对简单。 比起 候选数法 (Candidates Elimination Techniques),它的算法相对比较简单,当然能解决的谜题的复杂度也相对要低。在直观法 (Direct Elimination Techniques)中,常用的算法包括:1. 单元唯一法( Sole Position Technique )2. 单元排除法( Basic Elimination Technique )3. 区块排除法 ( Block Elimination Technique )4. 唯一余数法 ( Sol

8、e Number Technique )5. 组合排除法( Combination Elimination Technique)6. 矩形排除法( Rectangle Elimination Technique)1. 单元唯一法( Sole Position Technique )这应该算是 直观法 中最简单的方法了。基本上只需要看谜题,推理分析一概都用不上,这是因为要使用它所需满足的条件十分明显。同样,也正是因为它简单,所以只能处理很简单的谜题,或是在处理较复杂谜题的后期才用得上。25我们先来看一个例子:在上图中,观察行B,可以看到除了B3 外,其他所有的单元格中都已有了数字,根据数独游戏的

9、规则,即每行,列或区块中不能有重复的数字,则B3 中能填入的数字只能是行B 中所未出现过的,也就是数字 3 。所以可以毫不犹豫地在B3 中填入 3 。这就是 单元唯一法在 行中的应用。这里的单元(Unit,orgroup),指的是行,列或区块。所以有三种情况:当某行有8 个单元格中已有数字,或当某列有8 个单元格中已有数字,或当某区块有8 个单元格中已有数字。无论是哪种情况,我们都可以很快地在该行,列或区块剩余的空格中填入该单元还未出现过的数字。下面是 单元唯一法 在列中的应用:26在第 7 列中,只有 F7 未填入数字,且这一列中数字8 还未出现过。所以F7 = 8 。在区块中也是一样:在起

10、始于 D7 的区块中,只有E7 还未填入数字,且这个区块中数字5 还未出现过,所以可以马上在E7 中填入 5 。单元唯一法 在解题初期应用的几率并不高,而在解题后期,随着越来越多的单元格填上了数字,使得应用这一方法的条件也逐渐得以满足。2. 单元排除法( Basic Elimination Technique )单元排除法 是直观法 中最常用的方法, 也是在平常解决数独谜题时使用最频繁的方法。使用得当的话,27甚至可以单独处理中等难度的谜题。使用 单元排除法 的目的就是要在某一单元(即行,列或区块)中找到能填入某一数字的唯一位置,换句话说,就是把单元中其他的空白位置都排除掉。它对应于 候选数法

11、 中的 隐式唯一法 。那么要如何排除其余的空格呢?当然还是不能忘了游戏规则,即行,列或区块中不能有重复的数字。从另一个角度来理解,就是如果某行中已经有了某一数字,则该行中的其他位置不可能再出现这一数字。如果某列中已经有了某一数字,则该列中的其他位置不可能再出现这一数字。如果某区块中已经有了某一数字,则该区块中的其他位置不可能再出现这一数字。单纯理解上面的规则还是不足以解题,但是在实践中这些规则却可以交叉使用。在实际解题过程中,应用最多也最方便的是对区块的单元排除法 ,我们可以先看下面这个例子:对于起始于 D1 的区块,其未填数字的空格有6 个之多,如果不使用单元排除法 ,是很难为这一区块填入任

12、何数字的。这时我们就可以利用行,列及区块的相互关系,即一个单元格既在某一行上,也同时在某一列上以及某一区块中的这种关系来解题。观察数字9 在谜题中的位置,可以看到它出现在B2 , A4 , C7 ,D8 , I1 和 H9 。而这些位置中,只有 B2 , D8 和I1 与起始于 D1 的区块有关联。因为I1=9 ,它所在的第1 列上的其他单元格中不可能再出现9, 而区块中的 D1 和 F1 正好也在第1 列上,所以这两个单元格填入9 的可能性被排除。同理,因为 B2=9 ,它所在的第2 列中的其他单元格不可能再填入9,而区块中的 D2 和 E2 也正好在第282 列上,因此,这两个单元格填入9

13、 的可能性也被排除掉了。再看行 D,因为 D8=9,所以该行上的D1 ,D2 和 D3 也不可能再填入9,而这些单元格正好也在起始于D1 的区块中。所以,这个区块中能填入数字 9 的位置就只剩下了E3 ,这样就通过排除法找到了答案,即E3=9 。下面再看一个在行中使用单元排除法 的例子:在谜题中观察数字4 和行 H ,在行 H 有 5 个空单元格无法确定数字,但是C3 位置上的4 使得其所在的第 3 列中的其他单元格上不能再出现4 ,所以 H3 不能填入4 。 I4 上的 4 使得其所在的区块中也不能再填入 4 ,它帮助行H 排除了两个单元格H4 和H6 ,而第 8 列上的 E8 中的数字4

14、使得同样位于这一列上的 H8 也排除了填入4 的可能。这样,行H 中能填入4 的位置就只剩下H9 了。在列中也可以使用单元排除法 :29在第 7 列中,我们试图确定能填入数字1 的位置。在行B 中,数字1 已经出现在 B2 上,所以 B7不可能再填入数字1 了。而位于 D8 的数字 1 也使得 F7 排除了填入数字1 的可能,因为它们位于同一区块中。这样,第7 列上就只有 A7 能填入数字1 了。通过上面的示例,可以看到,要对区块使用单元排除法 ,需要观察与该区块相交的行和列。要对行使用单元排除法 ,需要观察与该行相交的区块和列。要对列使用单元排除法 ,需要观察与该列相交的区块和行。在实际解题

15、过程中,行,列和区块之间的关系并不象上面这些图中所示的那么明显,所以需要一定的眼力和细心观察。一般来说,先看哪个数字在谜题中出现得最多,就从哪个数字开始下手,找到还未填入这个数字的单元(行,列或区块),利用已填入该数字的单元格与单元之间的关系,看能不能排除一些不可能填入该数字的位置,直到剩下唯一的位置。如果害怕搞不清已经处理过哪些数字的话,可以从数字1开始,从左上角的区块开始一直检查到右下角的区块,看能不能在这些区块中应用单元排除法 。然后测试数字 2 ,以此类推。单元排除法 是应用得最多的直观法 ,虽然在实践中经常会因为粗心而漏掉很多使用这一方法的机会,但只要勤加练习,就可以运用自如。3.

16、区块排除法( Block Elimination Technique )区块排除法 是直观法 中进阶的技法。虽然它的应用范围不如单元排除法 那样广泛,但用它可能找到用30单元排除法 无法找到的解。有时在遇到困难无法继续时,只要用一次区块排除法 ,接下去解题就会势如破竹了。区块排除法 实际上是利用区块与行或列之间的关系来实现的,这一点与单元排除法 颇为相似。然而,它实际上是一种模糊排除法,也就是说,它并不象单元排除法 那样利用谜题中现有的确定数字对行,列或区块进行排除,而是在不确定数字的具体位置的情况下进行排除的。这句话听起来似乎不好理解,让我们先从一个例子入手,看看区块排除法 是怎么应用的。对

17、于上面这个谜题,用基本的单元排除法 或是单元唯一法 都无法再找到解。这时可以尝试使用区块排除法 。我们先从填入数字最多的区块着手,也就是起始于G4 的区块,该区块中只有H6 和 I5 为空,且剩余数字 1 和 2 还未填入。这样,我们可以想办法确定这两个数字的位置。观察全局, 可以看到 D2=2,根据单元排除法, 它所在的第2 列上不能再出现数字2 ,所以 H2 和 I2将不能填入2,这使得起始于G1 的区块中数字2 可能出现的位置仅剩下I1 和 I3 ,见下图:31虽然我们无法确定2 在起始于 G1 的区块中的确定位置,但幸运的是,能填入2 的位置正好都在行I上,也就是说,无论2 在 I1

18、还是在 I3 ,行 I 的其他单元格中将不可能再出现数字2 ,所以可以毫不犹豫地排除在 I5 填入 2 的可能性, 这样,对于起始于G4 的区块而言,能填入数字2 的位置就只剩下H6 了。所以 H6=2。接下来,当然毫无疑问,利用单元唯一法 ,在 I5 填入数字1。先小结一下上面的求解方法:解题时,实际上是在对目标区块(主区块)有影响的区块(辅助区块)中应用单元 单元排除法 ,使辅助区块满足某些条件并能参与对主区块的数字排除。实际应用中,可能出现下面四种情况:当某数字在某个区块中可填入的位置正好都在同一行上,因为该区块中必须要有该数字,所以这一行中不在该区块内的单元格上将不能再出现该数字。当某

19、数字在某个区块中可填入的位置正好都在同一列上,因为该区块中必须要有该数字,所以这一列中不在该区块内的单元格上将不能再出现该数字。当某数字在某行中可填入的位置正好都在同一区块上,因为该行中必须要有该数字,所以该区块中不在该行内的单元格上将不能再出现该数字。当某数字在某列中可填入的位置正好都在同一区块上,因为该列中必须要有该数字,所以该区块中不在该列内的单元格上将不能再出现该数字。其中 1 ,2 两种情况相对常见,也比较容易判断。上面的示例就是第 1 种情况。下面我们会看到第 232种情况的例子:虽然在起始于A7 的区块中, 未填入数字的空单元格多达4 个,但我们还是可以轻松地确定数字5 的位置。

20、这是因为在起始于G7 的区块中,我们欣喜地发现数字5 可能出现的位置正好都在第8 列上,这时5 的确切位置已经不重要了,因为它已经满足了上面介绍的第2 种情况的条件, 因此可以参与对起始于A7的区块进行数字排除了。在它的影响下,A8 和B8 中填入数字5 的可能性已经不存在,因为它们都在第8 列上。这样,在起始于A7 的区块中,数字5 能填入的位置只剩下A9 和 C9 了。这时,我们再利用单元排除法,通过A4 位置上的数字5 再消除其所在行A 上的 A9 ,最终得到能填入5 的唯一位置 C9 。下面看几个比较少见的例子在行 C 上,数字 3 的位置可以通过下面的方法来确定:先看行 B,利用单元

21、排除法,通过H2 和 F3 位置上的3 进行列排除,得到行B 中能填入3 的位置为33B4 和 B5 。碰巧的是,这两个单元格都在起始于A4 的区块中,这时已经满足了上述情况3 的条件。利用单元排除法的区块排除,则行C 上的 C4 和 C5 都不能再填入3 ;再加上 F3 的列排除的共同努力,最终确定数字3 在行 C 上的唯一位置就是C1 。第 4 种情况的例子如下:在这个示例中,只是使用单元排除法和单元唯一法到这一步就继续不下去了。要想求得数字8 在第 6列的位置,就必须要借助区块排除法。先看第4 列,通过位于C3 和 I8 的数字 8 的行排除,使8 在第 4列可能填入的位置只剩下D4 和

22、 F4 ,而这两个单元格正好都在起始于D4 的区块中。因为第4 列不能没有数字 8 ,而数字 8 如果填在区块中的其他位置(如D6 ,E6 或 F6 )时将迫使 D4 和 F4 上不能再填入8 ,这样会导致第4 列没有数字8。因此,第 6 列中的 D6 ,E6 和 F6 能填入数字8 的可能性被排除。这样第 6 列中就只剩下B6 能填入 8 了。实际解题过程中,还会碰到比较复杂的情况,看下面的谜题:34你能确定数字3 在起始于 A1 的区块中的位置吗?先看位于C5 的数字 3 ,它不仅排除了同一行中C1和 C3 中填入 3 的可能性,也同时排除了同一行中C8 和 C9 填入 3 的可能性,这使

23、得在起始于A7 的区块中,能填入3 的位置只剩下B8 和 B9 ,见下图:利用 区块排除法 ,在起始于 A7 的区块中,无论3 在 B8 还是 B9 ,行 B 中的其他位置都不能再填入3 ,所以 B1 , B2 和B3 都被排除。于是,在起始于A1 的区块中,能填入3 的位置仅剩下A1 和 A2了。但至此我们还无法确定3 的准确位置,这时我们还要借助于其他的辅助区块来进一步排除。35观察起始于 D1 的区块, 利用 D7 位置上的3 排除同一行的D1 ,以及用 G3 位置上的3 排除同一列的 E3 和 F3 ,使区块中可能填入3 的位置只余 E2 和 F2 ,刚好这两个位置都在第2 列中,符合

24、上面介绍的第 2 种情况,于是可以把A2 也排除掉。最后,我们就可以很肯定地在A1 中填入数字3 了。这个例子同时使用了多个辅助区块同时参与排除。在实际使用中虽然这种情况并不常见,但却也不少见。关键在于如何能正确识别并恰当应用区块排除法 。相信通过大量的练习并勤于分析思考,这种方法就可以运用自如,得心应手。下面是其他的一些例子,可以帮助更好地理解并掌握这种技法:364. 唯一余数法( Sole Number Technique )唯一余数法 是直观法 中较不常用的方法。虽然它很容易被理解,所以说明这个方法不需要很大篇辐,然而在实践中,却不易看出能够使用这个方法的条件是否得以满足,从而使这个方法

25、的应用受到限制。与单元唯一法 相比, 唯一余数法 是确定某个单元格能填什么数的方法,而单元唯一法 是确定某个数能填在哪个单元格的方法。另外,应用单元唯一法 的条件十分简单,几乎一目了然。与候选数法 相比, 唯一余数法 相当于 显式唯一法 。虽然 显式唯一法 是候选数法 中最简单且应用最容易的方法,但在直观法 中却正好相反。先看一个例子:37对于单元格 G9 应该填入什么数字,就算你把前面介绍的所有直观技法都用上,也不得而知。然而,我们通过观察它所在的行,列和区块,可以发现除了数字2 以外, 1 到 9 中其他的数字都出现了,其中行G 中包含了 7,6,9,5,3 和 8,第 9 列中包含了数字

26、5 , 8, 7 和 1 ,起始于 G7 的单元格中包含了3 ,8 , 4, 7 , 5 和 1 。这样,如果 G9 不填入数字2 ,就一定会违反游戏“行,列或区块不能出现重复数字”的规则。所以G9 中的数字一定是2总结一下, 就是如果某一单元格所在的行,列及区块中共出现了8 个不同的数字,那么该单元格可以确定地填入还未出现过的数字。怎么样,很简单吧,但在实践中却不那么容易识别。看下面的谜题:你能看出来对哪个单元格应用唯一余数法 吗?38还有这个谜题:答案分别是 E6=9和 I7=9 。一般来说,只有在使用基本的排除方法都失效的情况下,才试着使用这个方法来解题。5. 组合排除法( Combin

27、ation Elimination Technique)组合排除法 和区块排除法 一样,都是 直观法 中进阶的技法, 但它的应用范围要更小一点。一般情况下,基本没有机会用到这种方法解题,所以要找到相应的例子也都很困难。当然,如果你希望优先以这个技法来解题的话,还是能碰到很多能符合使用组合排除法条件的情况。组合排除法 ,顾名思义,要考虑到某种组合。这里的组合既包括区块与区块的组合,也包括单元格与单元格的组合,利用组合的关联与排斥的关系而进行某种排除。它也是一种模糊排除法,同样是在不确定数字的具体位置的情况下进行排除的。下面先看一个例子:39对于上面这个谜题,你能确定数字6 在起始于 G4 的区块

28、中的位置吗?要想获得正确的答案初看起来有些困难。因为虽然在G9 和 H3 已经存在了两个6 ,但是利用它们只能行排除区块中的G4 和 H6 两个单元格,还是无法确定6 到底是在 I4 还是在 I5 中。这时候, 组合排除法就派上用场了。现在撇开起始于G4 的区块,先看它上面的两个区块,即起始于A4 和 D4 的区块。这几个区块的共同特点是占有同样的几列,也就是第4 列至第 6 列,因此它们之间的数字会相互直接影响。对于起始于 A4 的区块,利用 A1 处已有的数字6 进行行排除,可以得到这个区块中可能填入6 的位置只剩下两个:B5 和 C6 。 对于起始于 D4 的区块,利用 E7 处已有的数字6 进行行排除,可以得到这个区块中可能填入6 的位置也剩下两个:F5 和 F6 。这时,我们仍无法确定6 在这两个区块中的确切位置。但不妨对可能出现的情况作一下分析:40假

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论