强制网

关卡12 · 黑带

策略:

强制

概述

ForcingNet通过同时追踪每个候选数的所有推论来扩展强制链,而不仅仅是单条链。这会创建一个分支推论网络,能够发现更深层的矛盾和共同结果。

工作原理

  1. 找到一个有多个候选数的单元格。2.依次假设每个候选数,并追踪所有由此产生的推论(而不仅仅是一条链)。3.如果某个假设导致矛盾(不可能的状态),则排除该候选数。4.如果所有假设都得出相同结论,则该结论成立。

示例

起始位置

寻找强制网。

1

对r1c1的每个候选数进行分支

单元格r1c1有3个候选数:{1, 3, 9}。

2

假设r1c1是1

假设r1c1=1,并沿网络追踪所有推论。

3

此分支导致矛盾

此假设导致矛盾,因此该分支不可能。

4

从r1c1中排除1

所以1导致矛盾,可以从r1c1中排除。

5

结果

应用技巧后的结果。

技巧与规律

  • ForcingNets比强制链更强大,因为它们追踪每一个推论,而不仅仅是一条路径。它们的计算成本很高,通常是穷举前的最后手段。分支特性使它们难以手工追踪。