今天的讨论主题是区块摒除法 区块摒除法包括宫区块(pointing)与行列区块(claiming)。 在基础题里,利用区块摒除可以替代一些基础解法的观察,或辅助基础解法寻找焦点。 在非基础题里,区块可以隐藏任何其他结构,简单的可以把基础解法隐藏起来,难的可以隐藏数对等等其他进阶技巧。
用区块的观点来看下面这道题:
第一手,数字7对B8摒除: 得到B8的7在r8c4或者r8c6,虽然还不能确定到底是在哪一格,但是r8c4与r8c6都在R8,所以R8的其他格不能含有7。
第二手,数字7对B7摒除: r9c7为7,所以同处于R9的r9c1、r9c2不能为7,加上上一手的到的R8中除了r8c4与r8c6外的格都不能为7的区块作用效果,得到B7的7只能在r7c2。
运用区块观点来观察行列摒除的方法又被称为区块宫摒除法。 虽然行列摒除能够一步到位,但是从以往的经验来看,大部分玩家还是愿意使用区块宫摒除法来观察。大家能解释其中的原因么?
有的时候单单的一个区块还是不够的,需要双区块来弥补其不足。
这个例子,用区块的观点来看:
第一手,数字3对B2摒除: 得到B2的3在r2c4或者r3c4。
第二手,数字3对B3摒除: 得到B3的3在r2c7、r2c8、r3c7。
B2与B3的3占据了R2、R3,也就是B2的3在R2的话,B3的3就在R3,反之亦然,所以B1中位于R2、R3的格均不能为3。
第三手,数字3对B1摒除: 得到r1c3=3。
犹如那句“不能一步登天,就一步一步登天”,行列摒除可以透过区块宫摒除,多走一步得到相同的结果。根据上面几题的比较可以看出一部分的行列摒除用单区块宫摒除看是一条比较好的策略,通过中介让观察范围缩小,观察难度降低。最后一个例子,是一个相当困难的行列摒除,用区块宫摒除代替的话也需要用到双区块,这是对摒除法观察力的一大考验。不过通过练习,相信最终大家都能得心应手。
以下是一道行列摒除题,这个谜题第一解有5处可透过区块宫摒除达到行列摒除效果。大家不妨找找看在哪里。
区块宫摒除能够代替部分行列摒除的观察,双区块宫摒除虽然难度也大,但也能称的上是一种聚焦。
区块摒除分为两种,一种是宫区块(Pointing),另一种是行列区块(Claiming)。 宫区块由宫摒除产生,其观察方法与宫摒除相同,只是摒除后这个数字在这个宫有2个或3个位置可填,且这2个或3个位置处在同一行或同一列,此时删除该行或列其他格的该数。 行列区块由行列摒除产生,其观察方法与行列摒除相同,只是摒除后这个数字在该行或该列有2个或3个位置可填,且这2个或3个位置处在同一宫,此时删除该宫其他格的该数。 如果存在区块却没可删的格,说明已经被观察过,或者本身产生这个区块的数的影响范围包含了可删范围。
以下这个盘势,我用三种不同的解题方法说明解题过程的多样性。 另外一层的意义是表达区块所能扮演的重要角色。
SE(数独软件) 是采用三链数的解法
1. 上左图,数字 5,6,7 对第 8 列进行摒除,得到三链数 {567}。 2. 上右图,数字 2 对第 8 列进行摒除加上三链数 {567} 的卡位,得到第 8 列的摒余解 r6c8 = 2。
用四链数的解法
1. 上左图,数字 2,5,6,7 对第 8 列进行摒除,得到四链数 {2567}。 2. 上右图,数字 5,6,7 对 r6c8 进行删减,得到唯余解 r6c8 = {2567} - {567} = 2。
用区块的解法
1. 上左图,观察第 9 宫得到区块 {3}。 2. 上右图,数字 3 及区块 {3} 对第 6 行进行摒除,得到第 6 行的摒余解 r6c1 = 3。
|