图像处理 四个点构成矩形的条件_第13讲:拓展矩形和唯一环

f9497a1c8348cd8e90ae4f2d4be445a1.png

这一节将讲到的是另外两种致命结构,他们从两个不同的维度拓展了唯一矩形结构,使得唯一矩形拓展到依然可用。

这一节难度可能会比较高,请分多次阅读,并最好有草稿纸写写画画。^_^

Part 1 唯一环(Unique Loop)

05cf8f888331b8df830e1292910d1530.png

如图所示,图中有一个全涉及2和6的结构。不过,奇怪的是,唯一矩形是只涉及4格的,这个涉及6格。

接下来,回顾一下UR致命的原因。

UR涉及的四个顶点是分属两个宫内的,而形成致命形式的原因是,结构本身而言,抛开它们四个单元格所在的区域下可以删除的数字,其余位置不会有任何候选数的变动。而这意味着,数对结构本身而言,是可以交换填数的,也就是说结构内有两种填法,但两种填法都使得剩下的盘面部分只有同一种填法,根据数独要求唯一解而言,既然剩余盘面都是同一种填法了,前面的部分就不可能存在有两种完全不一致的填法,所以说违背了唯一解的要求。

你把这个说法代入到这里来看。如果r7c4只有2和6两个候选数的话,由于这个结构涉及到三行(r479)、三列(c234)和三个宫(b478),而所有涉及的区域下,都会有26数对的存在。那么删除掉这些2和6之后,其余候选数不会变化。就结构本身而言,内部是有多种不同的填数情况的(由于数对的关系,内部填数就可以完全发生交换,产生两种填法),而使这样不同的填数情况最终都可以得到一致的剩余盘面情形。唯一解要求,每一个单元格都只可能有一种填数可能,所以数对这个结构也不能发生变化才是。所以,这个结构不能存在在盘面之中,也就是出现了致命形式了。

为了规避这个结构的存在,r7c4<>26。

这个结构被称为唯一环(Unique Loop),简称为UL,因为这个结构首尾拼接可以构成环状形式,而且利用到的是和UR一样的思维方式。那么,UL既然是从唯一矩形拓展而来的结构,那么它最大可以到多大呢?

试想一下,UL是由完全一致的数对形式拼接成环、利用唯一解来得到矛盾的结构。那么唯一矩形会涉及两行、两列、两个宫;而上面的结构会涉及三行、三列和三个宫。那么最大的结构,就应当是九行、九列和九个宫了。但是,如果真是这样的话,那全盘都会存在这样两个完全可以互换的数对,那不就直接产生两个填法了吗?所以说,最多只会涉及八行、八列和八个宫,跟着这样的类比,我们可以知道的是,最大的结构应当可以涉及16格。

不过可怜的是,我们没有找到这样的结构,只有一个14格的UL。

2ac75812f16b285a1ac602b4efc648ef.png

这个结构涉及的区域是r1246789c456789b2356789。是不是很可爱呢?要不自己试试看怎么推导的吧!(提示:UR有四种类型哟,UL应该是一样的,那么想想看UL里面对应的四种类型的逻辑吧!)

其实的确只能是14格结构为最大。这一点暂时讲不到,内容会靠后一些,所以你可以自己想想看哟!它使用到的证明的逻辑是Reverse结构,有兴趣的可以去EnjoySudoku论坛上找找看。

Part 2 拓展矩形(Extended Rectangle)

要说唯一环是从规格拓展的结构,那么拓展矩形(Extended Rectangle)就是从数的维度进行拓展的结构。

f0ba4ee9051ab28cabdedbfc8370ab42.png

如图所示,这个结构颇像唯一矩形,不过唯一矩形是只有4格的,而这个结构占了6格,而且涉及的数字也从两种变化为三种。

如果说,使用原定的逻辑,这个推导就行不通了。为什么呢?因为这个结构特别复杂,而且对于r57来说,并不是单单的数对这么简单,涉及了两个三个候选数的单元格,这最终能体现出数对的效果,才可以导致类似于UR的致命效果才对。可是,我们确定不下来数对,所以行不通了。

这个思路就得改一下啦。观察结构涉及的两列。特别引起注意哈,这一次只看列,行和宫都暂时不管。然后,试想一下。如果r3c3只有1和5的话,c1和c3上,就都会有135数组。那么,删除掉c1和c3的135之后,其余单元格就落定了填法了。

如果此时,这两列涉及的数组每一格对应同行的话,比如图上的状态就是“每一格对应同行”,那么c13的填数就完全没有差别了呀。既然没有差别,那r13的填数状态就可以完全互换了。

啊?什么意思哟?说白了,因为删掉135数组该删的数字之后,结构涉及的单元格又恰好对应同行,那么就这6格而言呢,填数是可以完全交换的,怎么交换法呢?就是c1顺次的三个单元格可以顺次填入到c3里,而原本c3里面该填的数字呢,也可以顺次填到c1里。

所以,这样的结构依然致命,虽然不同于原本的逻辑,但依然可以得到两个完全可以互换的填法,所以也算致命。这种结构称为拓展矩形。那么,最大的结构有多大呢?按照推导方式呢,如果两行或者两列没有一个提示数的话,肯定是多解的,因为这两行或两列,就相当于两个“九数组”,虽然没有删数了,但是两行或两列的填数是完全可以交换的,因为结构只会存在于同一个大行或大列之中。也就是说,如果结构跨越大行或大列,那就不能交换啦,因为宫内的填法会受到影响,就像UR涉及的单元格不能分属四个宫内一样。所以,18格(2×9)肯定是不可以的。那就只能是16了。

但是,和UL最大只能涉及14格一样,这里给不出16格不成立的证明,在我们讲到Reverse结构后,再对这个结构作出补充。所以最大的拓展矩形结构应该为14格。

我们来看一下这个结构的样子:

04ead320427d4e00db0a490d7e2d6398.png

如图所示。这个结构涉及14个单元格。不折不扣的大致命结构。至于是为什么这样致命呢,这里就不用啰嗦啦,你看着就可以了!

另外,只涉及6格的拓展矩形结构,还有一种放置方式,如图所示。

0a72bcbf9589f32b879c3e04621ec96b.png

不过,这个结构是类似于UR类型2(待定数型)的哟!想想这个结构是怎么致命的吧!思考这一点可能有点难度哦,加油!

Part 3 总结

这一节是针对讲到的技巧做的一个统一的难度归纳和理论分析。

  • 唯一环
    • 英文名:Unique Loop
    • 难度系数:4.3 + 涉及的单元格数 ÷ 2 × 0.1 + 类型对应权值
    • 命名空间:Tech.DP.Loop
  • 拓展矩形
    • 英文名:Extended Rectangle
    • 难度系数:4.3 + 涉及的单元格数 ÷ 2 × 0.1 + 类型对应权值
    • 命名空间:Tech.DP.Extended
“类型对应权值”指的是技巧使用的过程之中,类似于唯一矩形下的类型,所对应的难度系数增量。比如唯一矩形的类型1(标准型),因为是基础结构,所以增量是0,唯一环如果使用类型1(标准型)进行删数时,因为也是基础结构,所以增量为0,即“类型对应权值”参数值为0;如果使用类型2A(同侧待定数型),增量则为0.1,类型3A(显性待定数组型)时,如果涉及显性数对,则增量为0.1。以此类推。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值