第 50 讲:探长致命结构
Part 1 结构的形成
现在我们来看一种新的致命结构,我们先来看下如下的三个例子。

如图所示,我们可以看到,这就是一个普通的UL结构,只涉及6个单元格。我们把这个例子进行推广。我们尝试把结构改写一下,让这个结构涉及三个数,变为下面左图这样,而下面右侧的这个结构就是它的更高规格的形式。


不过看起来这个结构似乎并不太像是一个致命结构,现在我们来证明之。
Part 2 证明
我们拿出结构,针对于b68的四个结构涉及的单元格作为假设条件。由于两个单元格显然只能填入两种数字,但结构本身是可以出现三种数的(稍后将给出证明),所以我们不妨就按照所有的情况一一进行枚举,看看是否全部情况都可以导致致命形式的出现,或者根本不存在这种形式。
首先,结构涉及三种数字,那么b68两侧放置的数对就只可能有两种情况:两侧是一样的数对和两侧有一个数不一样(比如1、2和1、2,以及1、2和1、3),显然不会有其它情况了。
先考虑第一种情况。

如右图所示,这是第一种情况(当然,2、3和2、3以及1、3和1、3的情况和这里假设的情况是一样的,所以其它两种就不用再去证明了)。那么,可以从图里看到,b9是有一个三数组的,所以我们针对于1和2而言来假设分布情况,那么就只有三种情况。
1和2横着放在r7c78上;
1和2竖着放在r78c7上;
1和2斜着放在r7c8和r8c7上。
显然,第一种情况将会直接在r67c78上产生关于1和2的UR的致命形式,所以这种情况将被我们排除掉;第二种情况也是如此,在r78c67上产生关于1和2的UR的致命形式,所以只可能是第3种填法,即把1和2“斜着”放进去。但是斜着放也产生了致命形式,是UL的致命形式,所以三种情况全部出现致命形式,故第一种情况是可以产生致命形式的。
可能你在这里会问我,为什么在证明的时候不能使用UR。比如这里可以看到结构里产生了r67c78以及r78c67的UR的区块类型,则可以删除两处的3,一样形成了致命形式,可是我并没有在前文里这么去证明它,这是为什么呢?因为我们是在证明致命形式是否出现,所以我们在结构里不要使用任何致命结构的技巧,否则结构因为可能的非唯一填数情况而使用致命形式使得结构本身变得不稳定(多种填法、唯一填法或没有合适的填法)。
接下来我们来看第二种情况的证明。

如图所示,这是第二种类型,我们依旧按照b9里按横着、竖着和斜着三种情况来放置1和2(当然这里的数字不同,你也可以假设为放置1和3,因为情况等价,所以这里只需要一种情况即可)。首先横着是不允许的,因为一定会出现UR的致命形式;而竖着又会让c7出现三个1和2的双值格产生无效填法,所以这种也是不可以的;那么1和2只能斜着放进去。
当1和2斜着放进去的时候,显然可以得到r7c7 = 3的结果,于是r78c6都可以出数,进而产生了连锁反应,导致这7个单元格全部可以出数,但只有唯一的填法,如下图所示。

但遗憾的是,r78c67产生了关于1和3的致命形式,所以这种情况依然是会形成致命形式的,所以,第二种情况也会形成致命形式。
所以,两种情况都会产生致命形式,所以这个结构本身就是一个致命结构。
可以发现到的是,结构在证明过程之中,位于b9的三个单元格只要是和b68两侧的数对同行列的话,都是允许的,所以这个结构实际上有四种不同的情况,如下面四个图所示。




其中的任意一种情况都是一个合格的致命结构。
接下来我们尝试证明四个数的形式是一个致命结构。由于涉及四个数,所以分情况就有三个了:两侧是一样的数(例如1、2和1、2)、两侧有一个数不同(例如1、2和2、3)和两侧涉及的两个数都不同(例如1、2和3、4)。
我们一个一个来看,首先是第一种情况。

如图所示,我们依然按照前文的说法分成三种情况,b9的1和2横着放、竖着放和斜着放。横着放和竖着放显然都会出现错误,一个会出现致命形式,而另外一个则会使得列上出现三个1和2的双值格。所以1和2显然只能斜着放,但是斜着放就变为了之前三个数的情况,形成了UL的致命形式,所以这个情况必然产生致命形式。
接着看第二种情况。

如图所示,这是第二种情况,我们此时可以这么想这个问题。我们把4随意放在r78c78里的任意一个单元格里,这便使得剩下的三个单元格构成了1、2、3的三数组结构,而配合两侧的1、2数对和2、3数对,结构形成了之前的致命形式(这里就不证明了,前文已经证明了这个结构),所以这个是会产生致命形式的。
最后我们再来看一下第三种情况,即两侧的数字没有相同的,我们拿1和2以及3和4来举例说明。

如图所示,这是第三种情况,我们照样按照之前的分析方式,对b9里的1和2作出填数的放置情况的分析:横着放出现UR致命形式;竖着放则会在c7或c8里出现三个1和2的双值格,出现矛盾;所以此时依然只能斜着放。不过斜着有两种情况,一种是r7c7和r8c8是1和2,另外一种则是r7c8和r8c7是1和2。我们按其中一种情况来分析即可。假定,r7c7和r8c8是1和2的话,则有如下图所示的情况。

似乎看起来并不像是一个会产生致命形式的东西,我们随意填入一种情况,而这种情况看似不会造成交换,但实际上b9内发生了轮换,导致产生了两种填法,所以我们任意假设出其中的这两种填法,如下图所示。


可以看到,b9里的1、2、3、4的填法按宫内进行了“顺时针旋转”,即都向它逆时针上相邻那一个单元格移动了一下,而与此同时,两侧的数对也因为刚才的交换而发生了变换。不过,交换是合法的,因为我们找到了一种填数方式,使得这种填数方式和原本的填数方式完全一样:结构所处的所有区域下都产生了一致的数组结构,并未发生实质性的、有影响的修改。比如我们这种置换形式,c7上原本是1、2、3,而轮换了之后,c7是2、3、1,依然还是这些数,所以c7产生的两种填法对这个区域而言并未造成任何的影响。同理其余的区域也是一样的道理。
那么,既然结构涉及的任意区域都不会产生改变,我们就可以认为第二种情况是第一种情况的置换后的结果。如果题目是唯一解的,则显然对于这8个单元格而言就产生了两种填法。而且严谨的是,这里应当说是至少两种填法,因为这个结构还可以逆时针轮换b9里的数字。所以形成了致命形式。
故第三种情况也会产生致命形式。所以三种情况全部矛盾,故4个数字的结构依旧是一个致命结构。
证明看起来很难受,但是实际上结构很简单,我们这里把结构罗列出来。


这两种形式的致命结构称为探长致命结构(Borescoper's Deadly Pattern),由中国数独玩家探长发现,并冠名该技巧。探长就是之前提出毛刺毛边理论的那个人。
另外需要啰嗦一下的是,这个技巧的结构内部的候选数是可以消失一些的,而消失的这些候选数并不影响结构形成致命形式。这也是显然的,因为结构本身的完整版是形成致命形式的,所以少掉一些情况,只是少一些填数方案,但我们说过,形成致命形式是客观的,只要能发现一种填法使得形成致命形式,就必然存在与之互换的另外一种形式,所以它并不会影响到什么。
当然了,消失一些候选数使得结构直接被破解,出现排除或者唯一余数之类的技巧的话,这种情况就另说了。
下面我们来讲述一下,关于这两种致命结构的基本使用。
Part 3 三个数的探长致命结构
3-1 标准类型

如图所示,我们寻找到一个三数的探长致命结构,为了规避致命形式的出现,所以r4c7 <> 459。
3-2 区块类型

如图所示。如果此时r15c3(6)均不存在的话,将使得结构只有3、5、6,出现探长致命结构的致命形式。所以为了规避致命形式的出现,r15c3(6)至少有一个是对的,所以构成类似于区块的形式,故r6c3 <> 6。
下面我们来看类型4的例子。
3-3 共轭对类型

如图所示。发现c2包含一个数字6的共轭对,并且刚好落脚点只能在可能是探长致命结构的格子r14c2上。假设此时r4c2填入4,那么由于共轭对的关系,剩下的唯一一个可以填入6的地方只有r1c2了。而剩下的格子r146c1和r46c4和r14c2会构成一个三数探长致命结构的致命形式。因此,我们必须规避这种情况,因此r4c2 <> 4;同理,剩下两个5也是一样的删数的道理。
下面我们再来看一个例子。

如图所示。和前面的那个例子不同,这个例子包含两个数字5和6是被标注为橙色的。而标注这些数字的格子一共有三个(即r4c78和r5c7)。和前面一则例子完全一样的是,橙色数字在这个宫里只能填在橙色的格子里,而别的格子不能填。
如果其中任何一个格子里填入了数字3的话,那么剩下两个格子可以放入5和6;而别的位置因为题目的约束,是无法填入5和6的。所以,5和6既然只能填入到剩余两个格子里的话,那么必然就是一个5、一个6了。与此同时,由于我们的假设,剩下的一个格子是3,而把外侧的r46c6和r3c78都算上的话,结构构成了三数探长致命结构的致命形式,因此我们需要规避。因此,最开始的假设是不成立的,应该删除掉这个3。
和前面的例子相似,这个例子的数字也因为被“框”在这个范围里,所以我们算作类型4;但是这个5和6并不是所谓的共轭对,5姑且可以算,但6不是,因为6占了三个格子的填数机会。
3-4 拓展类型

如图所示,我们发现,3和7都仅出现在r46c46里。如果b5里所有8也只放在这四个单元格里的话,那必然3、7、8就只可能出现在这其中的三个单元格里,但是通过之前的说明里我们知道,不管怎么安放3、7、8,配合r46c3和r7c46的话,都必然形成关于3、7、8的致命形式,所以我们不得不删除这些8。
可是,为什么要全都删除呢?你可以反向思考这一点。b5里除了r46c46四个单元格外,还有五个单元格,这些单元格里必须得有一个8的出现,所以很自然就可以去掉r46c46 的8了,因为b5里一定会有8在这五个单元格里。
当然,这个例子还有一个删数,是r1c5(8),是因为我们刚才说到的那五个单元格里,只有其中两个单元格包含候选数8,而且它们恰好形成区块,所以b5和c5上其余位置的8也可以删除。
接下来我们来看一些嵌套该结构的链的示例。
3-5 毛刺探长致命结构


来看一则用法比较灵活的毛刺。我们将r6c5(9)视作毛刺。当它为假的时候,我们可以引出一条区块不连续环,删数此时是r5c6(5)。不过毛刺为真的时候,我们一定有r6c5 = 9 => r5c6 = 1的逻辑。考虑反证法,假设r6c5(9)为真但r5c6 <> 1的话,b5里将产生1、5的隐性数对,而与此同时,由于r6c5(9)的占位,导致3、7、8全部挤入到r56c4里,导致必然有一个数填不进去,出现矛盾。所以这个逻辑是对的。所以,我们就相当于得到了:
r6c5(9)为假 => r5c6(1)为真;
r6c5(9)为真 => r5c6(1)为真。
所以r5c6(1)不论任何情况都为真,所以它为真。这一点很像是矛盾强制链里的思维,不过矛盾强制链是证否。
3-6 嵌套探长致命结构的动态链

如图所示。假设r78c3里不含有7,则{r2c56, r7c36, r8c356}将产生一个疑似探长致命结构的形式。我们此时分两种情况讨论。
如果此时r2c56(9)为真,则r2c9(9)为假,此时观察{r2c89, r9c8}三个单元格,如果r9c8(7)也不存在的话,那所有数字都不跨区,三个单元格只含有两种不同的数字,将无法填满,产生矛盾,故r9c8(7)必然为真才行;
如果此时r7c6(3)为真,则r7c9(3)为假,于是观察{r1c9, r2c89, r7c9, r9c8}五个单元格,如果此时r9c8(7)为假的话,此时里面不含有重复的数字,而且每一个数字都不再跨区,五个单元格填不满,所以会矛盾,所以r9c8(7)为真。
显然,上述两种情况里至少有一个是为真的,否则都为假,而r78c3(7)为假,此时{r2c56, r7c36, r8c356}七个单元格将只有1、6、8,形成探长致命结构的致命形式。所以必须保证至少有一个情况成立,但最终它们的结果都是r9c8(7)为真。所以这个链的整体思路就是设r78c3(7)为假时一定有r9c8(7)为真,故删除头尾的交集,即r9c123(7)。
不过,这个题目UR比较多,实际上图里还有一个UR的毛刺删数,和一个UR的数组类型,你可以找找看,虽然题目里的UR跟这里的探长致命结构没有什么特别的关系……
Part 4 四个数的探长致命结构
接下来我们来看一些四数的探长致命结构。
4-1 标准类型

如图所示,当r6c8(4)为假时,将使得{r12c278, r6c78}产生四数探长致命结构的致命形式,所以r6c8 = 4,删掉其余的候选数。
4-2 区块类型

如图所示,如果让r45c89(5)全部消失,则{r45c389, r9c89}形成关于2、3、4、7的致命形式,所以r45c89(5)至少有一个是对的,那么删除b6其余位置的5。
4-3 共轭对类型
再来看一个类型4。

如图所示。我们发现r2上,关于数字4和6都只能放在r2c469里。倘若我们使得这三个格子里出现数字3的话,那么由于剩下只有两个格子的关系,那么剩余的两个格子自然就自动成为了隐性数对。于是,跟着其它的r3c469和r8c46的话,结构就变成了四数探长致命结构的致命形式。因此,我们为了规避此情况的发生,我们不能让r2c469里有填入3的任何情况。因此,r2c469里所有候选数3均可删除。
这个例子因为用的是类型4的逻辑,所以我们归类为类型4;只是说,这里的6和9并不叫共轭对,因为它占了三个位置了;但是,因为逻辑和原本UR里的类型4一样,所以归于这个类型。
4-4 其它类型

如图所示。当r1c57(4)去掉后,结构变为一个只带三个数,但在b3占了四个单元格的探长致命结构。可以发现,这种结构实际上就类似于之前讲到的三数探长致命结构的进阶类型:b3里任取r12c78的其中三个单元格,结构就一定出现致命形式。所以这个题也一样。我们任取其中三个单元格,都会保证里面出现一个数字7,而这个数字7一定是对的,否则结构必然出现关于5、6、8的致命形式,所以可以删除的是这个7区块对应的r1和b3的其余位置的7;而显然,4在r1的其余位置也可以删除,否则结构只有5、6、7、8,必然形成致命形式。