什麼是 Slant?
Slant──在日本稱為「ごきげん斜め」(Gokigen Naname)──是一種鉛筆謎題,你要在棋盤的每一格畫一條對角線。每條對角線都是角到角:要嘛是從左上到右下的反斜線,要嘛是從右上到左下的斜線。沒有第三種選擇,也沒有空格:每一格最後都會帶著兩種傾斜之一。
讓它成為謎題的,是放在棋盤點上的小小數字圓圈──也就是格子相接的角。每個數字精確地告訴你,那個點周圍的對角線有幾條觸到它。一個點周圍最多有四格,所以提示從 0 到 4。在此之上還有一條全域規則,給了 Slant 它的鋒利:你畫的對角線永遠不可圍成封閉的迴圈。滿足每個數字、避開每個迴圈,棋盤的對角線排法就只剩唯一一種。
- 每格帶一條對角線:反斜線或斜線。
- 數字圓圈位於格子的角相接的點上。
- 數字表示有幾條對角線觸到那個點,0 到 4。
- 對角線在棋盤上永遠不可圍成封閉的迴圈。
- 正確的棋盤滿足每個數字,且不含任何迴圈。
- 這裡每道謎題都被打造成只有一個解。
如何線上玩 Slant
點擊或輕觸任一格,即可在其中放下一條對角線。每次點擊讓格子前進──空、然後反斜線、然後斜線、再回到空──所以最多兩次點擊就能到你要的傾斜,第三次則清除它。若你偏好,右鍵會反向前進,是快速翻轉單一格子的捷徑。數字圓圈即時更新:當它周圍的對角線符合其數字時,圓圈轉綠;觸到太多時則轉紅。
棋盤也盯著迴圈。若你畫的線圍成了一個迴路,那個迴圈上的格子會被標示,並出現簡短警告,讓你可以撤銷封住它的那一步。「檢查」會把你的棋盤與唯一解比對,標出任何不符的格子,但不告訴你該往哪邊改。「提示」填入一個正確的格子──或改正一個錯的──「復原」退回一步,「重設」清空棋盤,「解答」則畫出完成的排法。
- 左鍵讓格子前進:空、反斜線、斜線、空。
- 右鍵反向前進,用於快速翻轉。
- 圓圈在滿足時轉綠、超過時轉紅。
- 圍成迴圈會標示出問題格子並提醒你。
- 檢查、提示、復原、重設與解答都如你所料運作。
先讀 0 和 4
Slant 最強的提示是兩個極端。0 表示沒有任何對角線可觸到那個點,所以它周圍的每格都必須朝離開它的方向傾斜。在棋盤中央,一個 0 立刻固定它的四格,每格把角指向另一邊;在邊上固定兩格,在棋盤的角本身則固定那唯一一格。4 是鏡像,只出現在棋盤深處:四周的四格都必須把角正對著它,圍成一個小星。先掃過棋盤找 0 和 4,往往不必思索就能填上十幾格。
角點與邊點帶著自己安靜的確定性。棋盤角本身的點只觸到一格,所以唯一合理的提示是 0 或 1,而兩者都能完全固定那格。角上的 1 迫使那唯一的對角線指向它;0 則迫使它離開。這些極小的被迫格子看似不起眼,但每一個都成為下一步推理可倚靠的事實。
- 0 迫使每個鄰格朝離開那點的方向傾斜。
- 4──永遠在內部──把四格都指向那個點。
- 角提示(0 或 1)立刻固定它唯一的格子。
- 邊點觸到兩格;0 或 2 一次固定兩者。
- 在處理較細微的計數前,先解掉每個極端提示。
禁止迴圈才是真正做工的規則
很容易把 Slant 讀成純粹計數,但真正的推理活在禁止迴圈的規則裡。想像兩條對角線已在某點相接,繞過幾格,直到迴路只剩一個缺口。任何會封住那迴路的對角線此刻都被禁止,所以那格必須採另一種傾斜──即使附近沒有任何數字要求。正是這一手把 Slant 與純算術謎題分開:一條線可能僅因為另一種選擇會封住迴圈而被迫定。
最小的迴圈是由一個點四周四格組成的整齊菱形,所以禁止迴圈的規則在斜線開始捲回的狹窄角落最早咬住。一個好習慣是把對角線看成不斷生長的連通點網絡:你畫的每條對角線連起兩點,而你永遠不可連起一條對角線鏈已連起的兩點。玩過 Slitherlink 的人會認得這直覺,只是這裡你到處禁止迴圈,而非建出一個。
- 若一條對角線會封住連通點的迴圈,它就不合法。
- 光憑這點就能迫定一個附近沒有數字的格子。
- 最小可能的迴圈是繞一個點的四格菱形。
- 追蹤哪些點已被一條對角線鏈連起。
- 永遠不要連起兩個已連通的點──那會造出迴圈。
計數、平衡,與提示之間的鏈條
極端消去後,中間的數字便成了一場平衡。把每個提示當成周圍對角線的預算:一旦某點湊齊它的線數,剩下的每格都必須指離它;而若某點仍缺線,卻只剩剛好足夠的格子來供應,那些格子就全被迫向它。例如內部一點的 3 幾乎和 4 一樣強──四格中有三格必須指向它,所以一旦有一格被證明指離,其餘三格就鎖定。
難的 Slant 棋盤之妙,在於讓這些小小的確定性流動。一個被 0 固定的格子可能決定鄰近一個 2 的某角,那又讓某個 1 只剩一種滿足方式,進而在兩格外封住一個迴圈。這裡無需猜測:每一步都是短而局部的推理,卻像鏈環般彼此交棒。在數字與禁止迴圈規則之間滑動,彼此收緊,連密集的 10x10 也會一條被迫對角線接一條地解開。
- 當一點達到它的數字,其餘格子便指離它。
- 當一點剩下的格子剛好覆蓋它的需求,它們全指向它。
- 內部的 3 迫使四格中的三格指向該點。
- 被迫的格子成鏈:每個事實解開下一個提示或封住一個迴圈。
- 每一輪都在計數邏輯與迴圈邏輯之間交替。
Slant 從何而來
Slant 是 Nikoli(ニコリ)出版的眾多原創謎題之一──這家日本公司為數獨命名,並推廣了一整族以簡單作圖規則為本的邏輯謎題。它的日文名「ごきげん斜め」是個小玩笑:這片語是表示「鬧脾氣、心情不佳」的日常成語,但「斜め」字面意思是傾斜或對角,所以標題既可讀作「鬧彆扭」也可讀作「全都歪斜」。這道謎題以簡潔而具描述性的名字 Slant 傳到英語讀者手中。
Slant 之所以傳得這麼遠,部分在於它徹底的極簡。除了數到四之外沒有算術、沒有塗色、沒有要學的符號──只有兩種可能的筆畫和一條禁止迴圈的規則──然而推理卻深得出人意料。它也在軟體中找到第二個家:Slant 是 Simon Tatham 廣為使用的 Portable Puzzle Collection 中的謎題之一,把它介紹給從未見過 Nikoli 雜誌的一代玩家。
Slant 與 Slitherlink、Masyu 及其他迴圈謎題
Slant 與讓 Nikoli 聞名的迴圈謎題同源,卻把它們的核心想法翻轉過來。在 Slitherlink 中,你讀數字格、把點連成恰好一個封閉迴圈;在 Masyu 中,你讓一條迴圈在黑白珠之間穿行。Slant 用同樣的點、邊、提示語彙,卻要你畫出一座森林而非一個迴圈──一個可以分枝、擴張,但永遠不可自我封閉的對角線網絡。數字計算一點上的線端,正如 Slitherlink 的數字計算一格四周的邊。
與數獨之類的塗色謎題(如數織或 Nurikabe)相比,Slant 幾何得多:你從不填區域,只選一條線的傾斜,而全域約束是拓撲的,而非關於連續段或連通性。這使它成為友善的橋樑謎題。若你喜歡 Slitherlink 的被迫手鏈條,你會如歸故里;若你只塗過格子,Slant 是一條容易又有成就感的途徑,讓你開始用線與迴圈、而非用方塊來思考。
- Slitherlink:提示計算邊;你建出恰好一個封閉迴圈。
- Masyu:依黑白珠穿出一條迴圈。
- Slant:提示計算對角線端;你建出分枝、無迴圈的網絡。
- Slant 的約束是拓撲的──避開迴圈──而非塗色。
- 它在迴圈謎題與計數謎題之間架起漂亮的橋。
棋盤尺寸與難度
6x6 棋盤是練反應的地方:一小片對角線,其中 0、4 與角提示帶你走很遠,要避開的迴圈也容易看出。到 8x8,數字點變多、確定性之間的空隙變長,於是禁止迴圈的規則開始派上用場,你也學會追蹤哪些點已相連。10x10 棋盤是完整的謎題──被迫對角線的長鏈、從數格之外威脅的迴圈,以及在任一條線確定之前就橫越棋盤的推理。
難度改變給你的提示數量。簡單棋盤保留許多數字,所以大多數格子單靠計數就固定,解起來輕快。中等把提示變稀,留下更多只有禁止迴圈規則能決定的格子。困難把棋盤削到精瘦的一組數字──接近仍能定出唯一答案的最少──於是你大量倚賴迴圈邏輯。無論你選哪種,每個棋盤在你看到之前都由求解器解過,只保留有唯一解的。
- 6x6──學 0、4 與角提示,迴圈容易看見。
- 8x8──更多點、更長空隙,禁止迴圈規則真正派上用場。
- 10x10──被迫的長鏈與從遠處威脅的迴圈。
- 簡單、中等與困難改變給你的數字提示有多少。
- 每道謎題都經驗證只有一個解。