數獨中的空矩形技巧
什麼是空矩形?
如果同一候選數在一個宮中的所有位置都沿某一行或某一列分布,形成L形,而行列交點本身不包含該候選數,就形成空矩形。它與外部強連結結合後,可以在宮外產生排除。
如何識別空矩形?
檢查某個宮內的候選位置是否全部屬於一條行臂或一條列臂,並確認兩臂交點不含該數字,再尋找與其中一臂相連的外部強連結。
第1宮中的7只沿第2行或第2列分布,R2C2不含7。R8C2-R8C8構成強連結。無論R8C2是否為7,R2C8都會看到一個確定的7,因此可以刪除R2C8中的7。
空矩形為什麼成立?
宮內L形結構保證一條臂被排除時另一條臂必須成立,外部強連結提供互補分支,兩個分支都排除同一目標格。
空矩形與鎖定候選數有什麼不同?
鎖定候選數使用直接交叉關係;空矩形額外使用外部強連結,把排除延伸到更遠位置。
空矩形成立的必要條件
- 整個結構只分析同一個候選數。
- 該候選數在宮內的所有位置都必須落在一條行臂或一條列臂上。
- 兩條臂的邏輯交點不能包含該候選數。
- 宮外配對必須是真正的強連結。
- 目標格必須在兩個邏輯分支中都看見一個確定的候選數。
逐步檢查範例
先確認第1宮中的L形分布,以及R2C2不含候選數7。接著確認第8行的7只位於R8C2與R8C8,兩格構成強連結。若R8C2為7,它會控制第2列;若R8C2不是7,R8C8就必須為7,而宮內結構會迫使第2行臂成立。兩種情況都能從R2C8刪除7。
常見誤區
- 只要候選數看起來像L形就判定為空矩形。
- 忽略宮內不屬於兩條臂的額外候選位置。
- 行列交點仍含候選數,卻把它當成「空」交點。
- 外部兩格並非強連結,仍套用相同排除。
常見問題
候選位置必須畫出真正的矩形嗎?
不需要。「空矩形」指的是空的邏輯交點,宮內可見的候選位置通常呈L形分布。
同一個宮可以形成多個空矩形嗎?
有可能,但每個候選數、空交點和外部強連結都必須分別驗證,不能由一個成立的結構推論另一個也成立。
總結
空矩形需要宮內L形限制、沒有目標候選數的交點,以及一條外部強連結。只有外形相似而缺少任一邏輯條件,都不能排除候選數。