标签:
杂谈 |
分类: MSN搬家 |
接上篇,这部分介绍的内容,开始有料了哦~~
数对删减法(Naked Pairs)
隐性数对删减法(Hidden Pairs)
三链数删减法(Naked Triples)
数独的候选数法解题技巧──数对删减法
(Naked Pairs)
概说
遇到了高级、困难级的数独谜题,使得唯一候选数法和
隐性唯一候选数法黔驴技穷的时候,就是各种删减法上场的时机了。在各种的删减法中,数对删减法
是最容易察觉,并进行删减的方法。可惜的是,在实际的解题应用中,可让数对删减法发挥效用的时机并不多。
![5-1[2] 5-1[2]](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
<图 1>
请看<图 1>,(3, 5)和(4, 5)的候选数都恰为 1、9
两个数字,这时数对删减法的条件已成立了; 这表示第 5 行的数字 1 和 9 将只能填到这两个宫格中了,因为:如果数字 1
将填入(3, 5),那么(4, 5) 就一定要填入数字 9;反之,如果数字 9 将填入(3, 5),那么(4, 5)就一定要填入数字
1;不论哪一个状况出现, 第 5 行的数字 1 、9 都已出现,所以不得再填入本行的其它宫格;否则就违反数独填制的规则啦!
所以除了这两个宫格外,如果其它宫格的候选数中包含有数字 1、9,就可以毫不考虑的把它删减掉,因为
候选数的意义是可能填入该宫格的数字,而这两个数字已不可能再用来填入本行的其它宫格中了。啊!太好啦! (2, 5)、(6, 5)、(8,
5)的候选数中都因包含有数字 1 或 9,所以可以删减掉,其中(6, 5)的候选数 由 4、9 删减成
4,于是可用唯一候选数法来填入下一个解了。
![5-2[2] 5-2[2]](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
<图 2>
当数对删减法的条件成立时,可别高兴得太早,因为很有可能在其它宫格的候选数中会找不到可删减的数字,例如:
在<图 2>的第 5 行中,数对 3、6 出现在(2, 5)及(8,
5),这时数对删减法的条件已成立了没错,但本行的
其它宫格早已填满,哪里找得到可删减的候选数呢?即使不像<图
2>般,本行的宫格仍未填满,但仍有可能在各
宫格的候选数找不到该数对来删减的,所以是白忙了一场,条件是成立了,但候选数并未因此而得到删减。
这种情形在解谜的中、后期最容易发生!
整理一下:
1. 当某行的某两个宫格候选数恰为某个数对时,就可以把该数对自本行其它宫格的候选数中删减掉。
2. 同理,当某列的某两个宫格候选数恰为某个数对时,就可以把该数对自本列其它宫格的候选数中删减掉。
3. 当然,当某个九宫格的某两个宫格候选数恰为某个数对时,就可以把该数对自本九宫格之其它宫格候选数中删减掉。
利用「找出某一行、某一列或某一个九宫格中某两个宫格候选数恰为某个数对的情形,并将该数对自
其它宫格候选数中删减掉」的方法就叫做数对删减法(Naked Pairs)。
数对删减法示例
数对删减法一共有 3 种状况:第一种发生在行、第二种是发生在列、第三种则发生在九宫格。<图
1> 就是 发生在行的例子了,其它的情况举例如下:
![5-3[2] 5-3[2]](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
<图 3>
<图 3> 是数对删减发生在列的例子:图中数字 8、9 出现在
(9, 8)及(9, 9) 这两个宫格, 所以可以将第 9 列的其它宫格候选数中的数字 8、9 安全的删减掉;于是(9, 1)的候选数
1、8、9 将被删减成 1,出现了唯一候选数啦!
<图 3> 同时也是数对删减发生在九宫格的例子:图中数字 8、9
出现在 (9, 8)及(9, 9) 这两个宫格, 所以可以将下右九宫格的其它宫格候选数中的数字 8、9 安全的删减掉;于是(7,
7)、(7, 9)这两个宫格 候选数中的数字 8、9 都可以被安全的删减;其中(7, 9)的候选数 6、8、9 将被删减成
6,出现了唯一 候选数啦!
这个数对删减发生在九宫格的例子,两个出现数对的宫格其实还是出现在同一列,虽可提醒玩者有这种
同时适用二者的情形,但发生在九宫格上的感觉上好像少了一点,下面就举一个纯粹发生在九宫格中的例子吧!
![5-4[2] 5-4[2]](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
<图 4>
<图 4> 就是数对删减发生在九宫格的例子:图中数字 7、8
出现在 (8, 5)及(9, 4) 这两个宫格, 所以可以将下中九宫格的其它宫格候选数中的数字 7、8 安全的删减掉;于是(7,
5)、(7, 6)这两个宫格 候选数中的数字 8 都可以被安全的删减;其中(7, 5)的候选数 3、8 将被删减成 3,出现了唯一
候选数啦!
![5-5[2] 5-5[2]](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
<图 5>
只靠数对删减法如<图 1>~<图
4> 般即可找出下一个解的情形当然不错啦!但有时是必须同时搭配
两种以上的删减法才能得到下一个解的。<图
5>就是其中的一个例子,请先试着解解看!
<图 5>中第 9 列的数字 3 仅出现在(9, 4)~(9,
6)这一个区块,所以可以利用区块删减法将(7, 4) 的候选数删成 1、2;(7, 6)的候选数删成 1、8;(8, 5)的候选数删成
2、5。删减之后,第 4 行的 (4, 4)、(7, 4)出现了数对 1、2,于是可以利用数对删减法将(1, 4)、(3,
4)这两个宫格 候选数中的数字 1 都安全的删减掉;其中(1, 4)的候选数 1、4 将被删减成 4,出现了唯一
候选数啦!
fk:这种方法我很早就发现了,而且也是我最喜欢的删减方法,不过确实如文中所说,对于高难度的题目,能够一开始就遇到这个的概率很低。往往都是一列解到最后,只剩下一个数对。
数独的候选数法解题技巧──隐性数对删减法
(Hidden Pairs)
概说
遇到了高级、困难级的数独谜题,使得唯一候选数法和
隐性唯一候选数法黔驴技穷的时候,就是各种删减法上场的时机了。在各种的删减法中,哪一个要先用
是随个人之喜好的,并无限制。本页介绍的当然就要以隐性数对删减法优先啰!
![6-1[2] 6-1[2]](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
<图 1>
请看<图 1>的上右九宫格,数字 8、9 都只出现在(2,
8)和(2, 9)这两个宫格的候选数中;这时隐性数对删减法 的条件已成立了!这表示上右九宫格的数字 8 和 9
将只能填到这两个宫格中,而且:如果数字 8 将填入(2, 8), 那么(2, 9)就一定要填入数字 9;反之,如果数字 9
将填入(2, 8),那么(2, 9)就一定要填入数字 8; 不论哪一个状况出现,(2, 8)和(2,
9)这两个宫格的候选数中若还有其它数字,全部是多余无用的,因为这 两个宫格若填入数字 8、9 以外的数字,那么上右九宫格的数字 8 或
9 就将无处可填了。候选数的意义是 可能填入该宫格的数字,而这两个数字以外的数字已不可能再用来填入本宫格中了,所以可以毫不考虑的把
它们删减掉。当(2, 8)和(2, 9)这两个宫格的候选数都安全的删减成数字 8、9 之后,(2, 5)出现了列隐性 唯一候选数 2
,于是可用隐性唯一候选数法来填入下一个解了。
整理一下:
1. 当某个数对仅出现在某个九宫格的某两个宫格候选数中时,就可以把这两个宫格的候选数删减成该数对。
2. 同理,当某个数对仅出现在某列的某两个宫格候选数中时,就可以把这两个宫格的候选数删减成该数对。
3. 当然,当某个数对仅出现在某行的某两个宫格候选数中时,就可以把这两个宫格的候选数删减成该数对。
利用「找出某个数对仅出现在某行、某列或某一个九宫格的某两个宫格候选数中的情形,进而将这两个
宫格的候选数删减成该数对」的方法就叫做隐性数对删减法(Hidden Pairs)。
当隐性数对删减法完成后,通常还可引发数对删减法;以<图
1>为例,当(2, 8)和(2, 9)这两个宫格的候选数 都安全的删减成数字 8、9
之后,还可利用数对删减法把 (2, 1)、(2, 2)、(2, 3) 这三个宫格候选数中的数字 8 删减掉。
隐性数对删减法示例
隐性数对删减法一共有 3 种状况:第一种发生在行、第二种是发生在列、第三种则发生在九宫格。<图
1> 就是 发生在九宫格的例子了,其它的情况举例如下:
![6-2[2] 6-2[2]](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
<图 2>
<图 2> 是隐性数对删减发生在行的例子:图中第 2 行的数对
4、6 只出现在 (3, 2)及(9, 2) 这两个宫格 的候选数中,所以可以将(3, 2)及(9, 2)的候选数安全的删减成数对
4、6;而经此一删,(3, 3) 宫格出现 了列隐性唯一候选数 1 啦!
![6-3[2] 6-3[2]](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
<图 3>
<图 3> 是隐性数对删减发生在列的例子:图中第 7 列的数对
4、7 只出现在 (7, 1)及(7, 8) 这两个宫格 的候选数中,所以可以将(7, 1)及(7, 8)的候选数安全的删减成数对
4、7;而经此一删,(8, 1) 宫格出现 了行隐性唯一候选数 2 啦!
fk:这种方法之前我用的并不多,仅仅是偶尔会用到。对于这个规律,如果在一开始候选的时候就进行注意的话,可以在候选完成之前就确定数对,这比最后再去找【隐性数对】要强得多。
数独的候选数法解题技巧──三链数删减法
(Naked Triples)
概说
遇到了高级、困难级的数独谜题,使得唯一候选数法和
隐性唯一候选数法黔驴技穷的时候,就是各种删减法上场的时机了。在各种的删减法中,哪一个要先用
是随个人之喜好的,并无限制。本页介绍的当然就要以三链数删减法优先啰!
![7-1[2] 7-1[2]](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
<图 1>
请看<图 1>的第 6 列,(6, 2)、(6, 3)和(6,
9)这三个宫格的候选数中, 相异的数字只有 4、5、9 三个;这时三链数删减法的条件已成立了!这表示第 6 列的数字 4、5 和 9
将只能填到这三个宫格之中了,因为:如果数字 5 将填入(6, 2),那么(6, 3)就一定要填入数字 4、而 (6,
9)就只能填入数字 9 了;另外,如果数字 9 将填入(6, 2),那么(6, 9)就一定要填入数字 4、而 (6,
3)就只能填入数字 5 了;不论哪一个状况出现,第 6 列的数字 4、5 和 9 都将已被使用,所以可将
他们自本列的其它宫格候选数中安全的删减掉,因为这三个数字已不再能成为其它宫格的候选数了。于是 (6, 1)的候选数 1、8、9
将被删减成 1、8;(6, 4)的候选数 5、6、9 将被删减成 6;(6, 5)的候选数 1、4、5、6、8 将被删减成
1、6、8;唯一候选数已出现在 (6, 4)了。
整理一下:
1. 当某列的某三个宫格候选数中,相异的数字不超过 3 个时,就可以把这 3 个数字自
本列的其它宫格候选数中删减掉了。
2. 同理,当某行的某三个宫格候选数中,相异的数字不超过 3 个时,就可以把这 3 个数字自
本行的其它宫格候选数中删减掉了。
3. 当然,当某一个九宫格的某三个宫格候选数中,相异的数字不超过 3 个时,就可以把这 3
个数字自本九宫格的其它宫格候选数中删减掉了。
利用「找出某一列、某一行或某一个九宫格中的某三个宫格候选数中,相异的数字不超过
3 个的情形, 进而将这 3 个数字自其它宫格的候选数中删减掉」的方法就叫做三链数删减法 (Naked
Triples)。
本法其实为数对删除法的推广,在介绍数对删减法时,因为我们的寻找标的是
数对,所以使用了一般人较能接受的数对这个名词,而说明成「找出某一行、
某一列或某一个九宫格中某两个宫格候选数恰为某个数对的情形,并将该数对自其它宫格候选数中删减掉」
的方法就叫做数对删减法。如果将以上的说明内容换成改成「找出某一列、某一行或某一个九宫格中的 某二个宫格候选数中,相异的数字不超过 2
个的情形,进而将这 2 个数字自其它宫格的候选数中删减掉」 的方法就叫做数对删减法也是成立的。
本法还可以继续加以推广:
1. 四链数删减法就是:「找出某一列、某一行或某一个九宫格中的某四个宫格候选数中,相异的数字 不超过 4 个的情形,进而将这
4 个数字自其它宫格的候选数中删减掉」的方法。
2. 五链数删减法就是:「找出某一列、某一行或某一个九宫格中的某五个宫格候选数中,相异的数字 不超过 5 个的情形,进而将这
5 个数字自其它宫格的候选数中删减掉」的方法。
3. ......
如果愿意的话,你确实是可以这样推广的,只是,实用上是否有其应用的空间呢?
三链数删减法示例
三链数删减法一共有 3 种状况:第一种发生在行、第二种是发生在列、第三种则发生在九宫格。<图
1> 就是 发生在列的例子了,其它的情况举例如下:
![7-2[2] 7-2[2]](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
<图 2>
<图 2> 是三链数删减法发生在列的例子:第 4 列中的(4,
2)、(4, 3)、(4, 9)三个宫格候选数中, 相异的数字只有 2、7、8 三个,所以可以将这 3
个数字自其它宫格的候选数中删减掉,于是 (4, 4)的候选数 2、6、8 将被删减成 6,出现唯一候选数了。
![7-3[2] 7-3[2]](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
<图 3>
<图 3> 是同时应用列及行的三链数删减法的例子:
1. 首先:第 5 列中的(5, 7)、(5, 8)、(5, 9)三个宫格候选数中,相异的数字只有 1、2、8 三个,
这时,如果数字 1 被填入(5, 7),那么(5, 9)将只能被填入数字 2,而(5, 8)就只能填入数字 8 了; 如果数字 2
被填入(5, 7),那么(5, 9)将只能被填入数字 1,而(5, 8)一样只能填入数字 8 ; 如果数字 8 被填入(5,
7),那么(5, 8)、(5, 9)将出现数对 1、2,所以数字 1、2 就只能被填到 (5, 8)、(5,
9)中;不论出现的是哪一种状况,数字 1、2、8 在本列都已使用,所以可以将 这 3 个数字自其它宫格的候选数中删减掉,于是(5,
4)及(5, 6)的候选数都被删减成 4、6。
2. 接下来:第 6 行中的(1, 6)、(4, 6)、(9, 6)三个宫格候选数中,相异的数字只有 5、6、7 三个,
这时,如果数字 7 被填入(1, 6),那么(4, 6)将只能被填入数字 5,而(9, 6)就只能填入数字 6 了; 如果数字 6
被填入(1, 6),那么(4, 6)、(9, 6)将出现数对 5、7,所以数字 5、7 就只能被填到 (4, 6)、(9,
6)中;不论出现的是哪一种状况,数字 5、6、7 在本行都已使用,所以可以将 这 3 个数字自其它宫格的候选数中删减掉,于是(5,
6)的候选数将继续被删减成 4,出现唯一候选数了。
![7-4[2] 7-4[2]](http://simg.sinajs.cn/blog7style/images/common/sg_trans.gif)
<图 4>
<图 4>
是三链数删减法发生在九宫格的例子:中央九宫格中的(4, 6)、(5, 4)、(5, 6)三个宫格候选数中, 相异的数字只有 3、8、9
三个,所以可以将这 3 个数字自其它宫格的候选数中删减掉,于是 (6, 4)的候选数 3、5、9 将被删减成
5,出现唯一候选数了。
fk:这个方法很经典,我是最近才发现的。将如果宫格候选数只有3个的话,就可以立刻用到这条规律,对于复杂的题来说,必须用到这个才能进行有效的削减。对于高级题,必不可少。
(未完待续)
前一篇:数独的候选数法解题技巧(上)
后一篇:数独的候选数法解题技巧(下)