Heyawake 是一款日本房間塗黑邏輯解謎遊戲,由 Hiroyuki Fukushima 發明,並於 1992 年 9 月首次刊登在《Nikoli》雜誌第 39 期。玩家須在描邊的房間內塗黑格子,使每個有編號的房間恰好含有指定數量的黑格、沒有兩個黑格共用一條邊、所有未塗黑的格子保持正交相連,且任何一條水平或垂直的白色連續格線不得穿越兩個以上的房間。這四項限制共同構成了 Nikoli 所公布的 Heyawake 官方規則,並適用於從入門小題到競賽版面等各種尺寸的版面。へやわけ(Heyawake)這個名稱結合了 heya(房間)與 wake(推理或區隔),反映了解題者必須跨越房間界線而非僅在單一區域內進行推理。有一種適合入門、便於牢記所有規則的方式,就是遊玩一盤固定且完全公開的題目,例如 Heyawake Puzzle,其三乘六的版面包含三個垂直的描邊房間,每個房間的提示數字皆為 1,而整個盤面可在三次塗黑動作內被證明完成。

heyawake rules
Heyawake 規則:房間塗黑邏輯解題的運作方式

Heyawake 規則的四項核心限制

無論版面大小,每一道 Heyawake 謎題都遵循同樣的四項限制。第一是房間數量:印在每個描邊區域內的小數字,會明確告訴你該房間必須包含幾格黑格。第二是相鄰規則:兩格黑格絕對不能共用水平或垂直的邊,但允許對角接觸。第三是白色連通規則:每格未塗黑的格子,都必須能透過一連串正交相連的白色鄰居,抵達其他所有未塗黑的格子,使整個白色區域形成單一連通區塊。第四是走廊規則:一條連續的水平或垂直白色格子不得穿越兩個以上的房間;一旦某條白色走廊進入第三個房間,該局面即為無效。

這些限制彼此環環相扣。僅滿足房間數量的盤面尚未解出,因為兩個房間的數字可能隱藏著相鄰的黑格,或使白色區域中斷。Nikoli 的規則定義將相鄰性與連通性視為硬性矛盾,而走廊規則則限制了白色空間在盤面上的延伸方式。解題者會學到一次性檢查全部四項限制,而非逐項檢查;像 Heyawake Puzzle 這類設計良好的題目,會在一個小型且可重現的版面中展示每一項限制。

房間數字、黑格與白格

盤面是一個矩形方格,被劃分為數個形狀不規則的描邊區域,稱為房間。每個房間都有一個提示數字,指定最終解答中該房間內必須有幾格為黑色。在 Heyawake Puzzle 中,方格為三列高、六欄寬,被劃分為三個各含六格的垂直房間,每個房間的提示數字皆為 1。這意味著頂部房間、中間房間與底部房間各必須塗黑一格,合計十八格中的三格為黑色。

未塗黑的格子則成為白色。白格並非只是被動背景,而是肩負著實質責任。它們不能被切割成兩個不相連的孤島,也不能讓某一條水平的白格連線或垂直的白格連線不中斷地貫穿全部三個房間。視覺上的區分相當重要,因為許多解題者會誤把 Heyawake 視為純粹的計數題。計數只是第一道篩選,但連通性與走廊規則才能決定在滿足計數條件的諸多排列中,何者才是合法的解答。

三房間走廊規則詳解

走廊規則是最常被新手忽略的限制。試想盤面上的每一列:從左至右觀察一列,你可以將其中的白格分為若干連續段。每一段都座落於某個連續的房間序列之中。一旦有某一段同時觸及三個不同的房間,該盤面即為無效,即使每個房間的數量皆正確,且白色區域在其他地方仍保持連通亦然。

Heyawake Puzzle 從一開始就將這條規則清楚地呈現出來。在空白盤面上,三列本身就是寬闊的白色走廊,每一列都已橫跨三個房間。你在某列放下的第一個塗黑動作,會將該列切斷為較短的段落;而遊戲目標在於安排全部三次塗黑,使任何水平或垂直的白色連段都不會在缺少黑格阻斷的情況下觸及第三個房間。因此,走廊規則會迫使你將黑格分散到不同的列與欄,而非將它們集中於盤面的某個角落。

如何遊玩 Heyawake Puzzle

  1. 使用方向鍵在十八格的盤面上移動選取位置。目前所在的格子會被高亮,讓你隨時知道下一個動作將落在哪裡。
  2. 按下 Space 鍵將目前所在的格子塗黑。在已塗黑的格子上再次按下 Space 則會取消塗黑;每次實際的塗黑或取消塗黑皆計為一次動作,用於計分。
  3. 按下 Enter 鍵可在目前所在的格子上放置一個選擇性的白色標記。標記屬於個人的推理筆記,不會影響驗證,再按一次 Enter 即可移除標記。
  4. 在三個房間中各放置恰好一格黑格。在此題中,每個房間的提示數字皆為 1,因此每個房間只能有恰好一格塗黑,不得多於一格。
  5. 保持黑格之間互不相鄰。若你塗黑的兩格共用一條邊,驗證會立刻回報矛盾,該局面在移除其中一格之前無法成為已解盤面。
  6. 保持白色區域連通。每次塗黑後,剩餘的白格必須構成單一的正交相連區塊。任何與其他白格斷開的白色孤島都構成矛盾。
  7. 打斷每一條橫跨三個房間的白色直線段。在塗黑動作完成後,掃描每一列與每一欄;若有白格連段貫穿三個房間,請再塗黑一格或移除一格以修復。
  8. 當三個房間皆顯示其提示數字、所有黑格互不相鄰、白格保持連通,且沒有任何連段跨越兩個以上房間時,即可停止。在公開題目中,於格子 1、9 與 16 進行三次乾淨俐落的塗黑動作,即可獲得 970 分。

計分、驗證與矛盾

Heyawake Puzzle 每局皆從 1,000 分開始。每當你按下 Space 鍵且確實改變了盤面時,分數會扣 10 分。因此,在公開題目中正確塗黑三次後,分數為 1,000 減去 3 乘以 10,等於 970。分數設有 0 分的下限,因此極度浪費的操作並不會使分數變為負數。驗證會在每次塗黑後重新計算,而非僅在完成時計算,因此你能即時看到規則狀態隨著操作更新。

驗證會區分兩種類型的錯誤。相鄰的黑格與被過度填滿的房間,屬於必須先修復才能解出盤面的矛盾;而填得不夠的房間或過長的白色走廊,則屬於雖會阻礙完成、但仍可透過另一次合法塗黑來修復的限制。矛盾局面根本無法成為完成解答;受限局面則仍可繼續推進。自動化測試會確認全部三個房間提示、確切的分割大小、相鄰拒絕、白色連通性、兩房間走廊上限、空盤可見的三房間走廊、精確的提示符合,以及完整的三次塗黑序列,並另外進行一項模擬,在相鄰兩格塗黑後確認陷入僵局的偵測功能。

規則硬性矛盾可修復限制
房間提示符合房間內的黑格數多於其提示數房間內的黑格數少於其提示數
黑格相鄰兩格黑格共用一條邊不適用
白色連通白格被分割為兩個不相連的區塊不適用
走廊上限不適用一條白色直線連段橫跨三個房間

操作方式、標記與重設選項

Heyawake Puzzle 支援三種輸入方式。鍵盤使用者可使用方向鍵移動、以 Space 鍵切換黑格、以及以 Enter 鍵新增或移除選擇性的白色標記。滑鼠與觸控使用者則可點擊格子來切換其黑色狀態,並透過快顯選單手勢加入白色標記。盤面以無障礙的 CSS 格狀系統呈現,並透過網站變數控制所有表面、邊框、對比色、聚焦外框與警告,使對比度與聚焦環在各種裝置上皆能保持一致,且無需使用 canvas、音訊、計時器、指標精度、帳號或網路呼叫。

重新開始會清除所有黑格、所有白色標記、動作計數、分數以及任何已回報的矛盾,將盤面還原為空白題目。連按兩次 Escape 鍵可開啟一份共用的試算表封面,將謎題隱藏起來,作為快速的「老闆鍵」手勢;再按兩次 Escape 鍵即可繼續遊戲。最佳成績可儲存於 localStorage,讓同一瀏覽器能在不同時段之間追蹤你最快的乾淨完賽紀錄。

Heyawake 在塗黑邏輯解謎中的定位

Heyawake 屬於二元判定解謎家族,此類謎題中每格最終只有塗黑或未塗黑兩種狀態,並由一組小型的全域限制來決定何種排列為合法。最接近的同類遊戲是 Hitori,其玩法是將重複的數字塗黑,使塗黑的格子互不相鄰,且剩餘未塗黑的格子保持連通。兩者的推理模式完全相同,差別在於 Hitori 塗黑的是重複的數字,而非朝著提示數字去計數。喜歡這類多層限制風格的讀者,可在 Hitori 規則指南 中並排比較兩份攻略,該指南以五乘五的版面涵蓋了相同的連通性與相鄰性邏輯。

Nikoli Heyawake 頁面是官方規則定義的主要來源,並確認相鄰性禁止共用邊但允許對角接觸、房間提示為精確數字,以及走廊穿越最多僅限兩個房間。Puzzle Heyawake 也獨立地交叉檢查了其盤面上的同樣四項限制,而已公布之房間數量慣例的來源則記載於 Puzzle Heyawake FAQ。這些參考資料共同說明了為何一道固定的小型題目便足以學會可延伸到競賽版面的規則,也證實了 Heyawake Puzzle 中的各項實作選擇——例如公開的解答、計分公式與老闆鍵——皆屬刻意設計,而非偶然。

延伸閱讀:Hard Hidato Puzzles: Solve a Verified 4x4 Number Path。