原理说明
剑鱼(Swordfish)是X翼的三阶扩展。如果某个数字Z在三行中的候选位置恰好都只出现在相同的三列中(每个行至少有一个候选位在这三列内),那么这三行中Z必定分别填入这三列。因此,这三列中其他行里的Z候选数可以被安全删除。
某数字在三行/列中的候选位置仅限于三列/行,可排除交叉线其他位置的该候选数。
剑鱼(Swordfish)是X翼的三阶扩展。如果某个数字Z在三行中的候选位置恰好都只出现在相同的三列中(每个行至少有一个候选位在这三列内),那么这三行中Z必定分别填入这三列。因此,这三列中其他行里的Z候选数可以被安全删除。
剑鱼在高级谜题中比X翼更罕见,但排除能力更强。当X翼条件不满足但三行/列结构成立时,剑鱼能提供有效的候选数排除。
剑鱼是X翼的三阶扩展,核心逻辑同样基于"覆盖集"原理,只是维度从 2×2 扩展到 3×3。以"行基础剑鱼"为例:
已知条件:
由于每一行必须恰好包含一个 Z,我们分析三行中 Z 的放置:
这意味着C1、C2、C3 三列的 Z 已经"用完"——分别由 R1、R2、R3 中的某一行占据。因此,这三列中其他行(非 R1、R2、R3)的格子不能再是 Z,可以安全删除。
提示:与X翼不同,剑鱼不要求每行都恰好出现在相同的三列中,只要求三行的并集恰好为三列。某行可能只出现在其中两列甚至一列。
候选数 Z 在三行中的候选位置并集恰好为三列。删除方向是"列"——即这三列中其他行的 Z 可被删除。这是最常见的剑鱼形态。
候选数 Z 在三列中的候选位置并集恰好为三行。删除方向是"行"——即这三行中其他列的 Z 可被删除。与行基础剑鱼对称。
三行中每行的候选位置都恰好是相同的三列,形成 3×3 的完美网格。这是最"干净"的剑鱼形态,但出现频率极低。大多数剑鱼都是不完美的。
三行中每行的候选位置数不同(可能一行 2 个、一行 2 个、一行 3 个),但并集恰好为三列。这是最常见的实际形态,识别难度较高。
误区一:并集超过三列
剑鱼要求三行候选位置的并集恰好为三列。如果并集是四列或更多,则不是剑鱼——可能是更高阶的鱼或不构成鱼结构。
误区二:某行候选位置过多
剑鱼要求每行的候选位置不超过 3 个。如果某行中 Z 出现在 4 列或更多,则该行不能参与剑鱼结构。
误区三:要求三行候选位置完全相同
与X翼不同,剑鱼不要求三行的候选位置完全相同。只要求并集恰好为三列即可。某行可能只出现在两列甚至一列中。
误区四:忽略列基础剑鱼
和X翼一样,剑鱼也具有行列对称性。只检查行基础剑鱼而忽略列基础剑鱼,会遗漏一半的识别机会。
剑鱼是X翼的直接扩展(二阶到三阶),进一步扩展为水母(四阶鱼)。它们都属于"鱼"(Fish)策略家族,基于相同的覆盖集原理——基地集(行)的候选位置并集恰好等于覆盖集(列),因此覆盖集中的候选数已被基地集"锁定"。剑鱼也可以有带鳍变体(带鳍剑鱼),在标准剑鱼的基础上增加了鳍格的灵活性。
策略家族关系: