标准数独进阶篇②
关于涉及到的各种名词详看①。
xywing是一种结构,结构形式为候选数分别只有ab/bc/ac的三个单元格,以ab为中心,bc跟ac分别跟ab有交集,删数格为bc跟ac的共同作用格的c,删数逻辑是当共同作用格c为真时,中心格ab无解。
图2中的蓝框为xywing的例子,r68c2,r9c3的三个格子构成了23/12/13的xywing(r8c2为中心格,r6c2与中心格同在c2,r9c3与中心格同在b7),删数格为r456c3以及r9c2(即r6c2与r9c3共同影响的格子),当删数格是3时,无论是哪个格子是3,r6c2会得出2,r9c3会得出1,此时r8c2无数可填。
红框的结构看上去很像xywing,但是无法定义中心格的位置,所以这不是xywing。
--------
xyzwing跟xywing的逻辑基本相同,结构形式为候选数分别只有abc/bc/ac的三个单元格,以abc为中心,bc跟ac分别跟ab有交集,删数格为abc/bc/ac的共同作用格的c,删数逻辑是当共同作用格c为真时,中心格abc无解。
图3中的蓝框为xyzwing的例子,r4c8,r6c47的三个格子构成了23/12/123的xywing(r6c7为中心格,r6c4与中心格同在r6,r4c8与中心格同在b6),删数格为r6c89(即r6c47与r4c8共同影响的格子),当删数格是2时,无论是哪个格子是2,r6c4会得出1,r4c8会得出3,此时r6c7无数可填。
我们说过xywing也可以用链的形式写出来,先看用链怎么画出xywing的逻辑。图4为xywing的链表达方式,实际上我把链简化了。以黄圈3假开始,当黄圈3假时,下个节点的1必须为真(这两个数字为强关系,r6c2(3)=r8c2(1),如果同时为假,c2中会有两个2。),此时下个节点的1必须为假(否则b7中会出现两个1,因此这两个数为弱关系,r8c2(1)-r9c3(1)。),这个时候下个节点的3必须为真的(r9c3的候选数1跟3如果同时为假那么这个单元格无数可填了,因此这两个数为强关系r9c3(1=3)。)。到这里链就结束了,强关系开头,强关系结尾,3假开始,3真结束,删数为链头跟链尾的共同作用格中的3。用文字的写法为:r6c2(3)=r8c2(1)-r9c3(1=3)=>r456c3,r9c2<>3
图5是这个xywing的链的完整画法,文字写法就不写了,太长。(这条链中的各个强弱关系的逻辑如下:r6c2中的23不能同时为为假,否则无数可填,因此23强关系;r68c2的2不能同时为真,否则c2有两个2,因此2之间弱关系;r8c2中的12不能同时为假,否则无数可填,因此13强关系;r8c2/r9c3的1不能同时为真,否则b7有两个1,因此1之间弱关系;r9c3中的13不能同时为假,否则无数可填,因此13强关系。)
受限于篇幅,关于xywing以及相关衍生可以自行看教材跟视频。