- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
04区块删减法
数独的候选数法解题技巧──区块删减法
遇到了高级、困难级的数独谜题时,唯一候选数法和隐性唯一候选数法仍有其黔驴技穷的时候;这时就是区块删减法上场的时机了,往后将要介绍的数对删减法(NakedPairs)、隐性数对删减法(HiddenPairs)、三链数删减法(NakedTriples)、隐性三链数删减法(HiddenTriples)、矩形顶点删减法(X-Wing)、三链列删减法(Swordfish)都具有类似的特性:使用这些技巧的目的仅在删减候选数的数目,删减之后,还是得使用唯一候选数法和隐性唯一候选数法来找出下一个解并填入数字的。
当使用唯一候选数法或隐性唯一候选数法找不出下一个解时,到底该先使用哪一个删减法呢?随您高兴的用吧!如果你比较擅长使用数对删减法,那就先用数对删减法吧!如果你认为区块删减法比较好用,那就先用数对删减法吧!......;介绍时总有先后的次序,但并不表示先介绍的就较好用或必须先用哦!只要能达到:「安全删减掉候选数,并找出下一个解」的目的,使用哪一种删减法都是可以的。
图1
请看图1,这时若使用唯一候选数法或隐性唯一候选数法是找不出下一个解来的!就先来试试区块删减法吧。请观察第9列:数字1在本行各宫格的候选数中,是不是仅出现在(1,9)~(3,9)的这一个区块中?太好了,区块删减的条件已有了;因为这表示第9行的数字1只能填在(1,9)~(3,9)的这一个区块中,而不论填在本区块的哪一个宫格中,上右九宫格的其它宫格将因本九宫格已出现数字1,而不得再填入1,否则就违反数独填制的规则啦!所以(1,7)~(3,7)及(1,8)~(3,8)这两个区块的宫格,如果其候选数中包含有数字1,就可以毫不考虑的把它删除掉,因为候选数的意义是可能填入该宫格的数字,而这个数字已不可能再用来填入该宫格中了。啊!太好啦!(1,7)的候选数中包含有数字1,所以可以把(1,7)的候选数由1、6删减成6,于是可用唯一候选数法来填入下一个解了。
当区块删减法的条件成立时,可别高兴得太早,因为很有可能找不到可删减的数字,例如:在图1的第1行中,数字2在本行的各宫格候选数中,仅出现在(4,1)~(6,1)这一个区块中,而不论数字2将来会被填到本区块的哪一个宫格中,将使得数字2不得再填入(4,2)~(6,2)及(4,3)~(6,3)这两个区块中;但请找找看!这两个区块各宫格的候选数中全部没有数字2,所以是白忙了一场,条件是成立了,但候选数并未因此而得到删减。
整理一下,并为了简化叙述起见,下面所述的「区块候选数」表示:该区块的各个宫格候选数的总和。例如(1,3)~(3,3)的区块候选数就是(1,3)的候选数4、6、7及(2,3)的候选数3、4、6及(3,3)的候选数3、7的总和:3、4、6、7啦!:
1.当某一个数字只出现在某行的某一个区块候选数中时,就可以把该数字自包含该区块的九宫格之其它区块候选数中删减掉。
2.同理,当某一个数字只出现在某列的某一个区块候选数中时,就可以把该数字自包含该区块的九宫格之其它区块候选数中删减掉。
3.同理,当某一个数字只出现在某个九宫格的某一个区块候选数中时,就可以把该数字自包含该区块的行或列之其它区块候选数中删减掉。
利用「找出某一行、某一列或某一个九宫格各个区块候选数中只出现一次的数字来,并将该数字自包含该区块的另一个行、列或九宫格的其它区块候选数中删减掉」的方法就叫做区块删减法(LockedCandidates,SingleSectorCandidates)。
区块删减法示例
区块删减法一共有4种状况:第一种是发生在行而去删减九宫格、第二种是发生在列而去删减九宫格、第三种是发生在九宫格而去删减行、第四种是发生在九宫格而去删减列。
图1就是发生在行而去删减九宫格的例子了,其它的情况举例如下:
图2
图2是发生在列而去删减九宫格的例子:因为第3列的数字6只出现在(3,1)~(3,3)这一个区块,所以可以将上左九宫格的另两个区块(1,1)~(1,3)、(2,1)~(2,3)候选数中的数字6安全的删减掉;于是(1,1)的候选数2、6将被删减成2,出现了唯一候选数啦!
图3
图3是发生在九宫格而去删减列的例子:因为上右九宫格的数字5只出现在(3,7)~(3,9)这一个区块,所以可以将第3列的另两个区块(3,1)~(3,3)、(3,4)~(3,6)候选数中的数字5安全的删减掉;于是(3,3)的候选数5、9将被删减成9,出现了唯一候选数啦!
图4
图4是发生在九宫格而去删减行的例子:因为中央九宫格的数字1只出现在(4,5)~(6,5)这一个区块,所以可以将第5行的另两个区块(1,5)~(3,5)、(7,5)~(9,5)候选数中的数字1安全的删减掉;于是(8,5)的候选数1、3、7、8将被删减成3、7、8;同理,中央九宫格
文档评论(0)