#剑鱼
前文中讲解了X-wing,但实际上,X-wing只是一种特殊情况。通过研究单一数字在整个盘面内的分布,对其进行讨论,总结出的一些固定结构称为鱼结构。区块、单链、X-wing都是鱼结构的特殊情况。本节先讨论一种较为基础的鱼结构:剑鱼。
前文所涉及的X-wing是二元意义上的鱼结构,剑鱼则是拓展到三元的情况。观察如下例题(左下图),经过基本功处理后如右下图所示:
观察数字1的位置,在第一、五、七行之中,数字1都只能存在于第二、六、八列中,使用类似X-wing的思路思考,三列中只有三个1,而灰色部分里已有三个,因此三列中的其余部分都不是1(左下图)。
删减后,得到第九行的1在I1,进一步解开此题(右下图)。此类方法可以看作X-wing在三阶上的一个拓展,称为剑鱼(Swordfish)。X-wing在更高阶数上也有类似的拓展,如四阶的水母(Jellyfish)等,这些技巧在本书中不予以涉及,感兴趣的读者可自行研究。
技巧提炼
当某数字x在某三行(列)中,只能存在于三列(行)内时,则剑鱼形成,删除这三列(行)内其余格的数字x。
右图中灰色格部分可以删减数字5。通过剑鱼方法删减后,可形成排除解或唯余解。如果涉及更高阶,依然有此类结构,也以海洋生物进行命名(如水母、水怪、鲸鱼等),统称为标准鱼结构。
16练习
请利用剑鱼方法解开以下题目。
★解题要点:(方法不唯一,仅供参考)
第一题
解题要点:第二、六、八行有1的剑鱼,删减D5、D7、D9的1,第四行的1在D1。
第二题
解题要点:第一、三、九列有5的剑鱼,删减H4、H5、H6的5,第八宫的5在G5。(www.xing528.com)
#区块链与鳍鱼
前文讲解了X-wing在阶数上的拓展结构,本节将讲解在X-wing基础上,增加、合并、挪动端点所形成的鱼结构——鳍鱼。
观察下题(左下图),经过基本功处理后如右下图所示:
观察数字8,在第六、第七行有下图所示的结构,可以从几种不同方向去进行理解:
①将G7(8)、G8(8)视为一个整体,有单链F9(8)==F3(8)——G3(8)==[G7(8),G8(8)],删减单链两端共同影响的I9的8。
②将G7(8)、G8(8)和G9(8)视为一个整体(虽然G9(8)必定不成立),原本F3(8)、G3(8)、F9(8)和G9(8)构成X-wing,但是X-wing的其中一个端点G9进行了拓展,因此X-wing本身的可删减数字也发生了变化,从原本的能删减第三、第九两列中其余的8,变成了只能删减共同影响格I9的8。
第一种思路叫作区块链,以区块代替单元格形成了单链的端点,本质上和单链并无区别;第二种思路则是鱼结构对于端点进行拓展后的情况,这种合并、漂移、新增的端点叫鱼鳍(Fin),有鱼鳍的鱼叫作鳍鱼。
本题是X-wing的鳍鱼,解开题目后如下图所示:
通过观察下面的例题(左下图),可以对鳍鱼有进一步理解:
在使用基本功处理后(右上图),观察数字6,在第三、八行中,数字6只能在第二、第七列,以及H3格。可以按照区块链的视角将H2(6)、H3(6)视为一个整体,最终删减的是两端的B2(6)与[H2(6)、H3(6)]共同影响的I2(6),得到I2=3(左下图)。
按照鳍鱼的视角,可以理解为X-wing基础上,端点H2(6)拓展为[H2(6)、H3(6)],也可以理解为新增了一个端点H3(6)。若H3(6)为假,那么是X-wing结构;如果H3(6)为真,则其自身可以对部分单元格进行删减。对这两种情况进行分类讨论,会发现两种情况都导向一个固定的结果——I2(6)为假,故而可以证明I2=3,进一步解开本题。终盘如右下图所示。
本书中仅涉及了X-wing的简单鳍鱼部分,关于剑鱼、水母也有其自身对应的鳍鱼,这类鱼结构较为复杂,不能简单地利用区块链进行阐述,也有在各类基础鱼结构之上附加多个端点的复杂情况,感兴趣的读者可自行研究。
由于鱼结构自身有一定难度,本节不设练习题。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。