简单着色(Simple Colouring)是一种进阶数独技巧:沿着同一个数字把一串格子连成链,再用两种颜色交替标记这些格子。链上的每一环,都是一行、一列或一宫,其中这个数字恰好只有两个可填的格子。一种颜色在它所有的格子里都是这个数字,另一种颜色在它的格子里都不是,所以你往往不必知道哪种颜色才是真的,就能排除候选数。
这项技巧也常叫染色法,英文又叫 Simple Colors 或 Singles Chains。它用在难题里,很多玩家把它当作学到的第一个链类技巧。本文先讲两条规则,再在真实的棋盘上逐环演示其中一条。
共轭对与两条规则
当一个数字在某一行、某一列或某一宫里恰好只有两个可填的格子,这两个格子就叫做共轭对。这个数字必须填在其中一个里。它不在第一个格子,就在第二个格子。所以这两个格子永远是对立的:一个填这个数字,另一个不填。
共轭对共用一个格子时,就连成了链。给第一个格子涂一种颜色,它的搭档涂另一种颜色。然后从每个已涂色的格子出发,沿着其他共轭对继续,新格子涂相反的颜色。到最后,要么第一种颜色的所有格子都是这个数字,要么第二种颜色的所有格子都是。不可能混在一起。
两个格子在同一行、同一列或同一宫里,就说它们互相看到对方。简单着色有两条规则:
- 颜色陷阱(Color Trap): 链外的一个格子,同时看到两种颜色的格子各一个。这两个有颜色的格子里必有一个是这个数字,所以链外的这个格子不能是它。从这个格子里排除这个数字。
- 颜色矛盾(Color Wrap): 同一种颜色的两个格子互相看到。这种颜色会让这个数字在同一行、同一列或同一宫里出现两次,所以这种颜色是假的。从这种颜色的所有格子里排除这个数字,并把它填进另一种颜色的所有格子。
一句话记住规则
同时看到两种颜色的格子要排除这个数字。同一种颜色的两个格子互相看到,这种颜色就是假的。
真实例题,一步一步看
在这个局面里,简单的步骤都已用完,没有可以直接填的唯一数。每个空格显示的是此刻剩下的候选数。更简单的技巧排除的候选数已经去掉。
- 5 提示数
- 5 已填好
- 5 新填的数字
- 5 构成结构的候选数
- 5 可排除的候选数
建立着色链
只看数字 4。从 R2C1 开始,把它涂成蓝色。然后沿着共轭对继续:
- 第2行: 4 只能填在 R2C1 和 R2C9。R2C1 是蓝色,所以 R2C9 是黄色。
- 第1列: 4 只能填在 R2C1 和 R9C1。R2C1 是蓝色,所以 R9C1 是黄色。
- 第1宫: 4 只能填在 R2C1 和 R1C3。R2C1 是蓝色,所以 R1C3 是黄色。
- 第3列: 4 只能填在 R1C3 和 R8C3。R1C3 是黄色,所以 R8C3 是蓝色。
- 第9行: 4 只能填在 R9C1 和 R9C7。R9C1 是黄色,所以 R9C7 是蓝色。
第7宫还有一个共轭对:R8C3 和 R9C1。R8C3 已经是蓝色,R9C1 已经是黄色,所以这一对和颜色吻合。其他的行、列、宫里,4 都不是恰好只有两个可填的格子,所以链到这里结束,有三个蓝色格子和三个黄色格子。
应用颜色陷阱
要么所有蓝色格子都是 4,要么所有黄色格子都是 4。现在检查链外仍有候选数 4 的格子。
- R1C7 在第1行,和黄色的 R1C3 同行;在第7列,和蓝色的 R9C7 同列。如果黄色是真的,第1行已经有 4 了。如果蓝色是真的,第7列已经有 4 了。从 R1C7 排除 4。
- R8C9 在第8行,和蓝色的 R8C3 同行;在第9列,和黄色的 R2C9 同列。同样的理由,从 R8C9 排除 4。
链外还有两个格子有候选数 4。R1C9 只看到黄色格子,R8C7 只看到蓝色格子,所以它们都保留 4。这条链里没有同色的两个格子互相看到,所以颜色矛盾的规则在这里用不上。
接下来怎么走
R1C7 原来有两个候选数,4 和 5。颜色陷阱排除了 4,只剩 5,这就是唯一余数:把 5 填进 R1C7。R8C9 原来的候选数也是 4 和 5,现在也只剩候选数 5。
试试 Sudoku Royale
你熟悉的经典数独,没有广告,没有弹窗,没有杂乱。每天一道全新的每日挑战,不计时的无限练习,还有技巧特训。想要刺激时,可以在同一块棋盘上和 2 至 18 名玩家竞速。
免费下载 Sudoku Royale(iOS)怎样寻找着色链
你需要写全笔记 (英文),因为少一个候选数,就会改变哪些格子是共轭对。然后按下面的顺序找:
- 选一个共轭对多的数字。 一个数字在好几行、好几列和好几宫里都只有两个可填的格子,是不错的选择。
- 给链着色。 从任意一个共轭对开始,每个新格子涂相反的颜色,直到没有共轭对能让链继续延伸。
- 先查颜色矛盾。 看看有没有同一种颜色的两个格子在同一行、同一列或同一宫里。这种情况不常出现,一旦出现,就可以把这个数字填进另一种颜色的所有格子。
- 再查颜色陷阱。 对链外每个还有这个候选数的格子,检查它是否同时看到两种颜色。
- 回到简单的步骤。 重新找唯一余数和隐性唯一数。
链越长,排除候选数的机会越多。只有两个格子的链就是一个共轭对。这样的链排除的候选数,指向对或行列区块同样能排除。每多一环,就多出一些可能同时看到两种颜色的格子。
常见错误
- 一环里有三个格子。 只有这个数字在该行、该列或该宫里恰好有两个可填的格子,这一环才有效。有三个格子的话,链就不能从这里继续。
- 把两条链混在一起。 同一个数字可以有两条互不相干的链。一条链的颜色对另一条链说明不了什么,所以格子必须看到同一条链的两种颜色。
- 从有颜色的格子里排除这个数字。 颜色陷阱只从链外的格子里排除这个数字。用颜色陷阱时,有颜色的格子保留它们的候选数。
- 给不止一个数字着色。 简单着色一次只追踪一个数字。格子里的其他候选数不用管。
什么时候用简单着色,接下来学什么
当你在难题里卡住,唯一数、数对和X翼都没有进展时,就用简单着色。X翼和剑鱼也是追踪同一个数字,所以对同一个数字把这三种都检查一遍,效率最高。
在 Dojo 里练习简单着色
Sudoku Royale 的 Dojo 为这项技巧准备了简短的课程和特训:一盘接一盘,下一步正是用到它。你的纪录是连续答对的最快一次,还能和其他玩家比一比。在 iPhone 上打开简单着色特训,或阅读Dojo 的玩法 (英文)。
免费下载 Sudoku Royale(iOS)简单着色一次只处理一个数字。XY翼则在不同的数字之间连接三个格子。X链 (英文)沿用同样的单数字思路,但用的环更灵活;三维美杜莎 (英文)(3D Medusa)把着色从一个数字扩展到多个数字。
常见问题
数独里的简单着色是什么?
简单着色沿着一条共轭对组成的链追踪同一个数字,用两种交替的颜色标记格子。一种颜色是这个数字,另一种不是,由此可以排除候选数或填出数字。
什么是共轭对?
共轭对是某一行、某一列或某一宫里的两个格子,某个数字在这里恰好只有这两个可填的位置。这两个格子中恰有一个填这个数字。
简单着色的两条规则是什么?
颜色陷阱:链外同时看到两种颜色的格子,不能填这个数字。颜色矛盾:如果同一种颜色的两个格子互相看到,这种颜色是假的,另一种颜色是真的。
必须知道哪种颜色是真的吗?
不需要。颜色陷阱对两种情况都成立,因为这个格子同时看到两种颜色各一个。只有颜色矛盾的规则才会告诉你哪种颜色是真的。