数独技巧3知识讲解
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
X翼删减法、剑鱼删减法
X翼删减法:两列只有两格可以填入6,且这
4格分别在两行形成一个X形,这时可以排除
这两行其它格内的填入6的可能,示意图:
剑鱼删减法与X翼删减法道理相同,由2列拓
展为3列.3列中每列都只有3格可以填入5,
且这9格分别在三行,这时可以排除这三行其
它格填入5的可能,示意图:
剑鱼删减法除了以上标准型(3-3-3,3列都
有3个候选数),还由一些简化形式,比如
3-2-3型、3-2-2型、2-2-2型等。只要可以满
足在某列中选择任意一个候选数,都满足在
3行中都存在一个候选数即可。下边给出一
个2-2-2型的剑鱼删减法:
X翼删减法实例:
剑鱼删减法实例:
Turbot Fish 删减法
1楼
Turbot Fish介绍之前做个简单的铺垫,简单介绍一下强弱链的关系。单链分为强链和弱链。强链:某行、列或宫只存在2个某候选数,这两个数就构成强链,两数非真即假。这里用红线连接表示。
弱链:某行、列或宫存在3个或3格以上某候选数,这些数就构成弱链,其中一个为真则其余为假;其中一个为假则不能判断其余的真假。这里用蓝线连接表示。
根据强链两端数字,一个为真另一个为假的特性可以引申出某些三条连续单链组有排除候选数的情况。
“强-强-强链”和“强-弱-强”链都可以导致“长链”两端数字交叉处格中的该数被删除。
下边给出两种“三连链”的图:(两图中“长链”形状可以互换)
说明:
“强-强-强链”由于链两端数非真即假的特性,标成红蓝两组,红为真则蓝为假,反之亦然。“长链”两端也为一红一蓝,肯定有一个是真,所以排除掉共同区域格(橙色格)中的x。“强-弱-强链”虽然不像“三强”中数字真假那么分明,但注意弱链的两端,弱链一端为真另一端也为假,这两端的数字分别连接强链,所以导致“长链”两端数同样是一真一假。如果弱链两端均为假,则长链两端数都为真。综上:同样排除掉共同区域格(橙色格)中的x。
所以,可以看出“强-强-强链”与“强-弱-强链”在排除两端数字交叉区域数字的效果上是“等价”
的。
turbot fish就是五条单链连成的环,有以下三种形状,左下边的形状酷似这种鱼,由此得名。
使用这种技巧就是找出这五条链中形成的“强-强-强链”或“强-弱-强链”。再利用刚才已经说明的这两种长链的性质——无论另两条链强弱与否,删除掉这两条链交点处的候选数。
示意图:
下边是Turbot Fish删减法实例:(还有另一种画法删除数字,你找到了吗?)
最后注意一点,如果画出的“鱼”中只有一条强链或只有两条连续的强链,是无法利用这种技巧的。因为没有“强-强-强链”和“强-弱-强链”作判断候选数真假的基础。
如果都理解了,可以应用到更长的单链中。
其实鱼的方法还是满简单的,以下为个人总结的步骤:
1、先确定四个宫,它们必须符合长方形/正方形的规格
2、接下来确定鱼尾巴,只有鱼尾巴是两个侯选数在一个宫中,并且不在一行/一列。
3、鱼尾巴确定了就可以开始画鱼了,分别是将鱼尾巴的两个节点横向/纵向延伸即可,而每个节点至少有两种延伸方式,所以同一条尾巴,至少有两种出现鱼的机会,并且这两种鱼型是有密切关联的。
Turbo Fish 多宝鱼(比目鱼)解法
可以简化成摩天楼解法,观察实现比 X-Wing 还要简单呢!
不是所有的多宝鱼都可以转换成摩天楼,大约是四分之三,
如楼主 2F 的左图,2个强链。
右图就无法转换了!
针对数字N 找到2个强链,以5F的例子。
可以转成下图的摩天楼
BUG删减法
BUG是Bivalue Universal Grave的缩写,按字面直接翻译是双壳全体坟墓。使用该技巧必须遇到以下情况,即绝大多数格内都只含两个候选数,只有少数格内多余两个候选数。如果非只含两个候选的格过多,建议不要试用该方法。下边以只有1-2个格内非两个候选数的实例说明。
该方法证明起来比较麻烦,不过一旦理解定式后便能立即得出结果,所以很有必要掌握。原理有点类似于唯一矩形删减法,即避免出现多解的情况。见下图,只有一个格内含有2、3、5三个候选数。假设该格内取值为2、5。那么该题便出现了双解(两种答案都是正确的)。为了避免这种情况的出现,该格内只能选3,这样就不会多解了,这个数一出,整题迎刃而解。
那么含三个候选数的格内到底取哪个候选数呢?观察含三个候选数的格于之共行(列、宫)的几格。如果同区有三格,另两格为xy、yz,那么这格内如果取xz就双解,所以取值就取xz之外的另一个数。如果掌握这个定式就可以很快解题了,至于原理嘛,不一定非理解的很深刻O(∩_∩)O
下边看一下有两个格内含三个候选数的情况。同样按照找xy、yz、xz的方法,先找到两个格内应该取哪个值。这时出现了一个有趣的情况,两个都取6,说明该行的6一定在两格之中,所以该行其他格内的6被删除。题目迎刃而解。
BUG+1有一个很好识别的办法:
1、所有未填写数格只有一个是有3个候选数的,其他都是2个候选数的
2、从3个候选数的数格里观察,如果某个数载行/列/宫都出现了3次,那么该数格就应该填写它了
唯一矩形删减法
这是一种较特殊的删减法,因为它运用的排除原理是数独的唯一性,如果你做的数独确定存在有唯一解,那么就放心运用这种技巧吧。当然,绝大多数的数独都是唯一解,但不排除有些奇怪的题目存在多解求解的可能。
先牢记下边的非唯一解情况吧,不少人做一些多解的题也会出现这种情况,4格中每格取x 或y都不算错误。
一个确定唯一解的数独不能出现上边的情况。
所以如果3格中都只有xy,另一格内除了xy以外还有其它候选数,则删掉这格中的xy,保留其它候选数。
理由:如果这格还取值x或y,则构成上边的非唯一解情况。