鱼的构建规则及删数原理
数毒吧
全部回复
仅看楼主
吧务
level 7
Sunnie😂 楼主
今天我们来讲一个东西,即鱼的删数原理。
构建法则:如果我们能够构建两个区域,一个定义域一个删除域,以每一个候选数或者是一个明数(明数表示题中给出的提示数/已知数,或者是我们根据推理得到的填入的数字,统称为明数),所有结构内的数字均属于至少一个定义域的结构称为鱼。
一个区域肯定是行、列、宫的集合。但请注意,这一法则并不要求我们需要找到的是定义域数量和删除域数量完全一致的鱼结构(此时引出三个定义:不饱和鱼、饱和鱼、过饱和鱼)。
====================================================================================
不饱和鱼:定义域数大于删除域数的鱼(这样的鱼结构是不稳定的,因为本身鱼内是不够填数的);
饱和鱼:定义域数恰好等于删除域数的鱼(我们一般理解的鱼);
过饱和鱼:定义域数小于删除域数的鱼(这样的鱼就是我们下面要说到的鱼结构)。
====================================================================================
因此,这样的方式,我们可以将带鳍的鱼技巧掌握得更好,并且也能掌握不带鳍的鱼技巧,你仅需要找到位于新增加的删除域的鳍的位置。但是对于删除的候选数来说,要求其实是会更高一些的。
那么,暂时称多余的区域(行、列、宫)称为鳍域(Fin sectors),再加上链的秩理论,则显然有如下的公式:
====================================================================================
鳍域数量 = 删除域数量 - 定义域数量
鱼结构的秩 = 删除域数量 - 定义域数量
单元格的秩 = 它所处于的删除域数量 - 它所处于的定义域数量
====================================================================================
那么,删数法则如下:只要鱼结构(定义域和删除域的集合)的某个单元格的秩大于鱼结构的秩,则这样的候选数能够被删除。
文本表述出来它的结构,处于排版需求,每一个单元格都标注了。如C1处的2/0就表示它同时处于2个定义域和0个删除域之中。
首先,我们来观察这样的一个结构。我们约定图上的示例之中,紫色表示定义域,绿色表示删除域。
这样来看,定义域数量一共有5个,但是删除域数量有6个。我们约定,rn、cn、bn(或者写成大写字母的Rn、Cn、Bn)分别表示第n行(Row n)、第n列(Column n)和第n宫(Block n / Box n)的话,那么鱼的表述为
r348c8b1/r12c567b9。其中,鱼的表述为“A/B”或者是“A\B”,A为定义域,B为删除域。
那么,观察此结构,我们发现,定义域和删除域均存在重叠的现象。但是这并不能说明它一定是内鳍和自噬鳍(这两个词语的定义请参看之前的文章,链接将在后面单独发表出来),此时定义域和删除域数量不等,因此不能按照这样的说法进行理解。
此时我们把这些重叠部分用深色标注出来。
那么,重叠区域肯定是会被计算两次的,而普通位置则肯定都算一次。那么,根据刚才的鱼的秩公式,计算出结构内每一个单元格的秩。
那么,我们观察到盘面之中,+2的所有位置。为什么去观察+2呢?因为数值“+2”(正2)表示的是当前单元格的秩。我们在之前的删数法则之中说到,当某一单元格的秩大于鱼的秩,则此处的位置的这个候选数可删。那么,由于这个鱼的定义域数只有5个,删除域数有6个,鱼的秩为6 - 5 = 1,所以大于1的部分都可以删除,即如下图所示。
以下将给出饱和鱼的删数,请按照上述的理论理解它的删数原理,以及自噬鳍的删数规则。
示例1:自噬鳍
示例2:过饱和鲸鱼(c245678/r456789b289)
2017年04月18日 15点04分 1
level 13
[滑稽][滑稽][滑稽]
2017年04月18日 15点04分 2
level 10
至今看不懂最后一图[滑稽]
2017年04月18日 18点04分 3
确实有问题
2017年04月19日 12点04分
不明白R5C46的两个7为什么没了。
2017年04月19日 13点04分
level 12
我估计只能这么理解。这种2X3死阵有时就藏着大鱼
2017年04月19日 12点04分 4
不明白R5C46的两个7为什么没了。
2017年04月19日 13点04分
@trostst_ 这个题的rank=1,而不是你想象的rank=3。
2017年04月19日 13点04分
@trostst_ 以及这个题的整体是有点偏的,之后再讲,少的数字是之前删掉的,可以先不管那些
2017年04月19日 13点04分
回复
gyfqbj86
:第5行少了3个7,现盘式删7是成了的,其实要想检验很简单,将这红7填入后剩下的几个宫是否都能将7填入,如果能成功填入就不能删,不能成功的填入就可以删。
2017年04月19日 13点04分
吧务
level 7
Sunnie😂 楼主
另外,当复杂的结构出现的时候,秩就需要看情况了。
这里的复杂结构指的是带有三角区的结构。三角区分强弱两种。当结构一旦出现,结构就需要枚举所有三角区的填数情况,然后放到结构内找到结构内的所有填数情况。然后确定填数的最坏情况,此时占据的弱区域数减去占据的强区域数就是秩。
具体请参看文献“链的秩理论”。
2017年05月01日 11点05分 5
1