分享

【新手专区】区块摒除法(上)

 向葵00 2016-09-27
  • 在数独的解题中,能够直接利用盘面上的数字出数的只有三种解法:唯一数法、摒除法、唯一余数法,摒除法按照观察目标的不同分为宫摒除法与行列摒除法。其中唯一数法本质上也是摒除法或唯一余数法。归根结底,基础解法包括两种,摒除法与余数法。

  • 除了基础解法外的解法称为进阶解法,它们用来弥补基础解法的不足,协助基础解法得解。常见的进阶解法包括:区块摒除法、数对、三链数、X-Wing、唯一矩形...


今天的讨论主题是区块摒除法

  • 区块摒除法包括宫区块(pointing)与行列区块(claiming)。

  • 在基础题里,利用区块摒除可以替代一些基础解法的观察,或辅助基础解法寻找焦点。

  • 在非基础题里,区块可以隐藏任何其他结构,简单的可以把基础解法隐藏起来,难的可以隐藏数对等等其他进阶技巧。


  • 这是一个区块摒除的例子

  • 首先数字6对第五宫摒除,得到第五宫的6在r4c5或者r6c5。

  • 不论是在r4c5或者r6c5,C5的其他格都不能再有数字6。(r4c5与r6c5就是数字6的区块,这也是区块摒除作用的观点)

  • 数字6对第二宫摒除,得解r1c4=6。


  • 用区块的观点来看下面这道题:

  • 第一手,数字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。

  • 运用区块观点来观察行列摒除的方法又被称为区块宫摒除法。

  • 虽然行列摒除能够一步到位,但是从以往的经验来看,大部分玩家还是愿意使用区块宫摒除法来观察。大家能解释其中的原因么?


  • 用区块的观点来看:

  • 第一手,数字2对B9摒除:
    得到B9的2在r8c7或者r8c8,不管是在这两格的哪一格,R8的其他格都不能再有2。


  • 第二手,数字2对B8摒除:
    经过r4c4、r7c1的宫摒除以及R8的区块摒除,得到r9c5=2。


  • 有的时候单单的一个区块还是不够的,需要双区块来弥补其不足。

  • 这个例子,用区块的观点来看:

  • 第一手,数字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 个行列摒除解,其中有 4 个可以透过区块宫摒除完成,请找找看,它们是在哪里?

以下是一道行列摒除题,这个谜题第一解有5处可透过区块宫摒除达到行列摒除效果。大家不妨找找看在哪里。

  • 区块宫摒除能够代替部分行列摒除的观察,双区块宫摒除虽然难度也大,但也能称的上是一种聚焦。


  • 区块摒除分为两种,一种是宫区块(Pointing),另一种是行列区块(Claiming)。

  • 宫区块由宫摒除产生,其观察方法与宫摒除相同,只是摒除后这个数字在这个宫有2个或3个位置可填,且这2个或3个位置处在同一行或同一列,此时删除该行或列其他格的该数。

  • 行列区块由行列摒除产生,其观察方法与行列摒除相同,只是摒除后这个数字在该行或该列有2个或3个位置可填,且这2个或3个位置处在同一宫,此时删除该宫其他格的该数。

  • 如果存在区块却没可删的格,说明已经被观察过,或者本身产生这个区块的数的影响范围包含了可删范围。


  • 有的软件有Direct Pointing一说,也就是直接区块。何谓直接区块呢?我们来看一个例子:

  • Direct Pointing

  • 首先数字6对第七宫摒除,得到第七宫的6在r7c1或r7c2。

  • 根据上一贴说的删减规则,R7的其他格不能再有6。

  • 加之r3c4的6对第八宫摒除,得到r8c6=6。

  • 这就是前面提到的区块宫摒除法。

  • 但是这个解并不能透过行列摒除得到。


  • 以下这个盘势,我用三种不同的解题方法说明解题过程的多样性。

  • 另外一层的意义是表达区块所能扮演的重要角色。

  • 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。


  • 一般人在解题使用余数法时把区块忘了,以下的解法就是把区块用在余数的点算上。



    1. 上左图,数字 6 对第 9 宫进行摒除,得到区块 {6}
    2. 上右图,点算 r9c3 的余数是 {36},因此 r9c3 = 3


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多