数独的候选数法解题技巧
http://www.newdu.com 2024/12/04 04:12:32 人民教育出版社 佚名 参加讨论
数独的候选数法解题技巧 ──矩形顶点删减法 (X-Wing) 概说 遇到了高级、困难级的数独谜题,使得唯一候选数法和 隐性唯一候选数法黔驴技穷的时候,就是各种删减法上场的时机了。在各种的删减法中,哪一个要先用 是随个人之喜好的,并无限制。本页介绍的例子当然可用其它删减法完成解题,且本删减法成立的条件 和其它方法相比稍嫌繁杂,但为了介绍,在进行解题时还是要以矩形顶点删减法优先啰! <图 1> 请看<图 1>的第 1 列及第 9 列,数字 8 都只出现在第 5、8 行的宫格候选数中;这时,数字 8 在此二列的 填入只有下列两种情形: 1. 第 1 列的数字 8 若填到 (1, 5) 中、则第 9 列的数字 8 就只能填到 (9, 8) 了。 2. 第 1 列的数字 8 若填到 (1, 8) 中、则第 9 列的数字 8 就只能填到 (9, 5) 了。 不论哪一种情况发生,都表示第 5 行及第 8 行的数字 8 已有归属了,所以 ( 2, 5 )~( 8, 5 ) 及 ( 2, 8)~( 8, 8 ) 都不能再填入数字 8 了,可以毫不考虑的自它们的候选数中把数字 8 删减掉, 于是(3, 5)、(6, 5)和(3, 8)、(7, 8)这四个宫格候选数中的 8 都可被安全的删减掉;而当(6, 5)的候选数少了数字 8 后,将使得(6, 6)出现列隐性唯一候选数 8 ,于是 可用隐性唯一候选数法来填入下一个解了。 整理一下: 1. 当某个数字在某两列仅出现在相同的两行时,就可以把这两行其它宫格候选数中的该数字删减掉。 2. 同理,当某个数字在某两行仅出现在相同的两列时,就可以把这两列其它宫格候选数中的该数字删减掉。 利用「找出某个数字在某两列仅出现在相同两行的情形,进而将该数字自这两行其它宫格候选数中删减掉」; 或「找出某个数字在某两行仅出现在相同两列的情形,进而将该数字自这两列其它宫格候选数中删减掉」的方法 就叫做矩形顶点删减法(X-Wing)。因为本删减法的条件成立时,关键的数字 8 所处的宫格在数独方阵上看来,刚好就在一个矩形的顶点。 遇到了高级、困难级的数独谜题,使得唯一候选数法和 隐性唯一候选数法黔驴技穷的时候,虽然你可以优先使用矩形顶点删减法来寻找下一个解;但大部分的人在 使用删减法的优先级上,通常都会将矩形顶点删减法排在稍后一点,为什么要如此安排,在实际使用一段时间之后, 相信你自能体会了,但这个方法又是不可或缺的,如果不会运用本删减法,有很多高级的数独谜题就将无解了。 矩形顶点删减法示例 矩形顶点删减法只有 2 种状况:第一种的删减发生在行、第二种的删减发生在列。<图 1> 就是 删减发生在行的例子了,第二种的情况举例如下: <图 2> <图 2> 是矩形顶点删减发生在列的例子:图中第 2 行、第 8 行的数字 3 只出现在第 1 列及第 2 列, 所以数字 3 在第 2 行及第 8 行的填入只有下列两种情况: 1. 第 2 行的数字 3 若填到 (1, 2) 中、则第 8 行的数字 3 就只能填到 (2, 8) 了。 2. 第 2 行的数字 3 若填到 (2, 2) 中、则第 8 行的数字 3 就只能填到 (1, 8) 了。 不论下列哪一种情况发生,都表示第 1 列及第 2 列的数字 3 已有归属,这两列其它的宫格将不能再 填入数字 3 了,所以可以将数字 3 自(1, 3)、(1, 5)及(2, 1)、(2, 4)、(2, 5)的候选数中安全的 删减掉,而当(2, 4) 的候选数由 2、3、4、6 删减成 2、4、6 时;(3, 4)将出现行隐性唯一候选数 3 啦! <图 3> <图 3> 也是一个删减法综合运用的例子。在(1, 8)中将可找到下一个解,你能找出来吗? 1. 因为上中九宫格的数字 1 只发生在(2, 4)~(2, 6) 这一个区块,所以可以利用区块删减法 把(2, 7)~(2, 9)候选数中的数字 1 安全的删减掉。 2. 因为第 1 行及第 7 行的数字 1 只出现在第 4 列及第 9 列,所以可以利用矩形顶点删减法 把(4, 3)及(9, 6)、(9, 8)、(9, 9)候选数中的数字 1 安全的删减掉。 经过以上删减之后,(1, 8)出现行隐性唯一候选数 1 啦! (责任编辑:admin) |