數(shù)獨(dú)是一種可愛的益智游戲。它需要你在空格內(nèi)填入1到9的其中任意一個(gè)數(shù)字,使得每一行、每一列以及每一個(gè)正方形的小九宮格內(nèi)的數(shù)字都不能夠有重復(fù)數(shù)字。例如下面三個(gè)盤面格子(以后均簡(jiǎn)稱盤面)所示,分別是行、列和小九宮格(以后均簡(jiǎn)稱為宮)不重復(fù)的情況。



盤面1到盤面3
當(dāng)然,整個(gè)盤面的每一行、每一列和每一個(gè)宮都得做到像上面三個(gè)圖所示的那樣,不重復(fù)。只要有兩個(gè)數(shù)字相同了,那就一定錯(cuò)了。 數(shù)獨(dú),顧名思義,數(shù)字的出現(xiàn)必須要“獨(dú)”,也就是不得重復(fù)。但是“獨(dú)”不僅僅只有這個(gè)意思。它還有一“獨(dú)”,是任意合格數(shù)獨(dú)盤面都只有唯一的一個(gè)答案,這被稱為唯一解定理(Unique Law)。說白了,每一個(gè)格子都只有唯一的一種填法。這樣,才能真正體現(xiàn)數(shù)獨(dú)的“獨(dú)”的特性。這樣才叫“獨(dú)”之道。 每一個(gè)數(shù)獨(dú)盤面最少都得有17個(gè)用于推理解題的提示數(shù)(Hints/Clues),因?yàn)榻?jīng)電腦演算發(fā)現(xiàn),能夠保證唯一解的數(shù)獨(dú)盤面至少都得17個(gè)提示數(shù),但目前暫未發(fā)現(xiàn)其邏輯證明手段。如果提示數(shù)少于17個(gè)的話,那么它一定是一個(gè)多解題,這樣的題就是不合適的。但是,也并不是隨意寫上17個(gè)提示數(shù),就一定是唯一解的數(shù)獨(dú)題。
在任意一個(gè)數(shù)獨(dú)中,每一行我們記為字母A到I,而每一列我們記為數(shù)字1到9。那么在第3行的第6格我們就會(huì)簡(jiǎn)記為“單元格C6”,而其前面的單元格三個(gè)字可以被省略。
 盤面4

盤面5
上面有4個(gè)數(shù)字,那么我們可以將“第5行第5格內(nèi)是數(shù)字1”簡(jiǎn)記做“E5=1”;同理,其他的3格可以記作“A3=9”、“C7=5”和“H7=6”。 單獨(dú)只說第3行的話,就可以直接記作“行C”,第6列就記作“列6”。如果單元格C7在哪個(gè)宮,則是按照從左到右、從上到下的順序依次排序得到的宮的編號(hào),如盤面5所示,A3在宮1,C7在宮3,等等。
還有一種表示方法。 我們提到的行、列、宮的概念,它們被統(tǒng)稱為單元(Unit)或者區(qū)塊(Region);而每一個(gè)格子,則都被叫做單元格;另外,盤面上給出的所有已知數(shù)字,我們都稱為“提示數(shù)”。那么,第1行第2格就可以采用“行1列2”的形式表示,并簡(jiǎn)寫為“R1C2”;“宮3的單元格C7”可以記作“R3C7(B3)”。其中,R、C、B就分別代表行、列、宮,都是對(duì)應(yīng)英文單詞的縮寫。 這兩種表示方法中,字母C都會(huì)被用到,所以應(yīng)注意區(qū)分:一個(gè)代表第3行,而另一個(gè)則是“列”的簡(jiǎn)稱。 另外,在任意一個(gè)數(shù)獨(dú)盤面中,每個(gè)單元格都有19個(gè)共軛單元格(Peer)。例如盤面4內(nèi)的E5,由于它屬于行E、列5和宮5,所以它的共軛單元格有行E的所有單元格、列5的所有單元格和宮5內(nèi)的所有單元格。這樣,就有19個(gè)共軛單元格。這20個(gè)單元格稱為數(shù)獨(dú)20格定理(Peers' Law)。
標(biāo)準(zhǔn)數(shù)獨(dú)大體可以分為3個(gè)類型。 第1類,是可以根據(jù)數(shù)獨(dú)的規(guī)則,直接觀察就可以填入數(shù)字的題目,這一類只會(huì)使用到一些簡(jiǎn)單的邏輯推理方法; 第2類,是可能不能靠直觀直接填數(shù),而需要靠一些格子里面可能填入的“候選數(shù)”根據(jù)特定定式推理分析得到的矛盾情況,從而排除部分情況,以這樣的方式完成的題目; 第3類,則是根據(jù)定式都沒法完成的題目,需要自己尋找各個(gè)位置候選數(shù)的信息,根據(jù)邏輯推理,找到一些關(guān)系,從而刪掉一些不可能的情況的題目,但是,與第2種不同的是,它沒有定式,形狀都是比較靈活的,不容易觀察到。 例如,我用Hodoku打開一個(gè)題目,如盤面6所示。

盤面6
這是一個(gè)數(shù)獨(dú)盤面。每一個(gè)空格子內(nèi)都有很小的灰色數(shù)字(請(qǐng)放大后仔細(xì)觀察——編者注),那個(gè),我們叫做候選數(shù)(Candidates),它表示在當(dāng)前格子內(nèi)可以填入的所有情況。但是,一般情況下,候選數(shù)都是沒有標(biāo)注出來的,這意味著需要自己標(biāo)注。所以這一類題目不如第1種題目簡(jiǎn)單。 另外,紅色數(shù)字表示題目給出的提示數(shù),黑色數(shù)字為填入的數(shù)字,下面的盤面將不再解釋。 有了大體的了解后,下面就開始技巧講解。
---> 宮摒除法(Blocked Hidden Single) 摒除法是最簡(jiǎn)單、基礎(chǔ)的解題技巧。由于標(biāo)準(zhǔn)數(shù)獨(dú)的規(guī)則中說到“填入數(shù)字使得每一行、每一列以及每一個(gè)宮內(nèi)的數(shù)字均不重復(fù)”,而每行、每列以及每宮都有9個(gè)單元格,而又必須填入1~9這九個(gè)數(shù)字,所以我們就應(yīng)該知道,1~9這9個(gè)數(shù)字,每個(gè)數(shù)字都要出現(xiàn)。正是因?yàn)?~9都要出現(xiàn),所以我們有了這樣一種技巧。 它被分為兩種類型,一種是宮摒除法,另一種是行列摒除法。 宮摒除法是在宮內(nèi)進(jìn)行摒除的辦法。我們來看一個(gè)例子(盤面7):

盤面7
如盤面7所示。我們可以觀察到,數(shù)字3在宮1內(nèi)只有唯一的一個(gè)位置可以填,就是A3。由于列1、列2中已經(jīng)出現(xiàn)了3,并且行B、行C也出現(xiàn)了3,所以在宮1內(nèi),3的位置將不得出現(xiàn)在A1、A2、B2、B3、C2、C3這6格。而由于宮1內(nèi)必須出現(xiàn)數(shù)字3,所以只能填入A3處。因此,A3=1,即如盤面7所示。 以上技巧由于在宮內(nèi)得到結(jié)論,所以就被稱為宮摒除法。 有些書籍將數(shù)獨(dú)的規(guī)則寫成“填入數(shù)字1到9,使得數(shù)字1~9在每一行、每一列和每一宮內(nèi)都各出現(xiàn)一次”。這樣寫其實(shí)并不太好,因?yàn)檫@種規(guī)則的并沒有說明“不重復(fù)”這一層意思。所以在此處,我將“不重復(fù)”的說法當(dāng)作了數(shù)獨(dú)的規(guī)則。 宮摒除法是在宮內(nèi)進(jìn)行摒除的方式,而行列摒除法則是在行或者列中進(jìn)行摒除的方式。放在之后的例子就可以清晰地給出。
---> 行列摒除法(Linear Hidden Single) 行列摒除法分為兩種,一種是行摒除法,即關(guān)于某一行進(jìn)行摒除;而另外一種是列摒除法,即關(guān)于某一列進(jìn)行摒除。來看盤面8。

盤面8
如盤面8所示。我們可以觀察到,在行D中,數(shù)字3的位置僅僅只能填在列1的H1處,因?yàn)榱?內(nèi)有5個(gè)空格,提示數(shù)3的位置使得A1、B1、C1、E1不得填入3,因此3被理所當(dāng)然地“框”在了H1處。所以,H1=3。 在做題過程中,可以采用圖中的這種劃線的方式來看,直到某一行、列或?qū)m內(nèi)只有唯一的單元格沒有被“掃”過,那么它就理所應(yīng)當(dāng)?shù)靥钸M(jìn)去了。上題是關(guān)于列1進(jìn)行摒除的,所以它被稱為列摒除法。而盤面9有一個(gè)行摒除法,請(qǐng)找出來。

盤面9
---> 可直觀區(qū)塊摒除法(Direct Intersection) 區(qū)塊摒除法是特殊的摒除法,它和之前的摒除法有一些許的不同。它分為兩種。

盤面10
如盤面10所示。我們發(fā)現(xiàn)在宮2中,3的位置無論是在B5還是B6,都恰好在行B。但是無論怎么說,這兩個(gè)位置都必須有一個(gè)數(shù)字填入3,因此行B的其余位置都不能填3。因此,行B的其他單元格都不再可以填3。此時(shí)我們發(fā)現(xiàn),列8僅僅只有B8、D8可以填3。但是由于B8不能填3了,所以只能D8=3。 由于這是對(duì)行B進(jìn)行的摒除,因此這種技巧也就被稱為行列式區(qū)塊摒除法(Direct Pointing)。 當(dāng)然,也同樣有宮式區(qū)塊摒除法(Direct Claiming)。來看盤面11。

盤面11
如盤面11所示。 我們看行C,行C內(nèi)填入7的位置只有C5和C6(C3被H3排除,C7被D7排除,C9被G9排除)。恰好,C5和C6又同時(shí)屬于宮2,那么宮2里面的其余單元格內(nèi)都不能填入7了。再看行A,行A內(nèi)本來可以在A4、A6和A8內(nèi)填入7的,由于A4和A6也同時(shí)屬于宮2,被排除了,所以只有A8能填入7,所以A8=7。 如果說可以根據(jù)一次區(qū)塊摒除法這一技巧就可以直接得到填數(shù)結(jié)論的,可以被稱作“可直觀”的。 在做題過程中,可以采用圖中的這種劃線的方式來看,不過這里由于是區(qū)塊摒除法,所以有些地方不一定很直觀,就得需要自己做題中進(jìn)行鍛煉,才能很快看到它們。
---> 唯一余數(shù)法(Naked Single) 唯一余數(shù)法,簡(jiǎn)稱唯余法,是一種某個(gè)單元格中被摒除法排除情況后,只剩下1~9的其中某個(gè)數(shù)字沒有填了,從而得到它就是此單元格的值的解法。

盤面12
如盤面12所示,給出了如上的提示數(shù),普通的摒除法和區(qū)塊摒除法已經(jīng)無法幫助我們找到可填的數(shù)字了。這個(gè)時(shí)候我們觀察I9。 I9同時(shí)屬于行I,列9和宮9,就看這三個(gè)單元,我們發(fā)現(xiàn)一共出現(xiàn)了1、9、4、3、5、6、7、2這些數(shù)字。根據(jù)摒除法的規(guī)則,I9的位置將不得填入它們。神奇的是,在這九個(gè)數(shù)字中,單單只有8沒出現(xiàn)。根據(jù)我們?cè)谥暗霓鸪ㄖ型瞥龅臇|西,即“1~9的每個(gè)數(shù)字都要出現(xiàn)一次”,得到結(jié)論,I9=4。 唯一余數(shù)法也可以適用于僅在同一個(gè)單元內(nèi)部的推理,也稱為點(diǎn)算(Full House)。
5. 請(qǐng)找到如下盤面中會(huì)使用到唯一余數(shù)法的所在單元格:?jiǎn)卧瘢ā 。?( ?。?/span>

|