遊び方 · asobikata

玩法說明

數橋(Hashiwokakero,橋をかけろ,意思是「把橋搭起來!」)是 Nikoli 推出的邏輯謎題。用橋把所有島連起來,讓每座島的橋數剛好等於它的數字。

一

數清橋數

島上的數字代表有幾座橋連到這裡。

二

一座或兩座

兩座島之間可以搭一座木橋或一座朱紅雙橋,不能更多。

三

走直線,不交叉

橋只能水平或垂直延伸,不能穿過其他橋或島。

四

連成一片群島

最後每座島都必須能到達其他所有島。

343323

已解謎題範例

操作方式 操作

點一下兩座島之間的水面就能搭一座橋,再點一下搭第二座,點第三下就會移除。

也可以從島往相鄰的島拖曳,或依序點選兩座島。

按右鍵 / Shift + 點一下可移除橋。

Ctrl Z 復原 · Ctrl Y 重做 · H 提示

完成的島會變綠,超過的島會變紅。卡關了?請 SAT 求解器給個提示,或幫你檢查橋。

幕後原理 仕組み

兩座相鄰島之間每一座可能的橋 e 都對應兩個布林變數:e₁(至少一座橋)和 e₂(第二座橋),再加上 e₂ → e₁,讓每種排法剛好對應一個模型。

¬e₂ ∨ e₁

數字為 n 的島,其變數中必須剛好有 n 個為真,以涵蓋所有組合的子句表示。交叉的橋彼此互斥:

¬h₁ ∨ ¬v₁

連通性很難用 CNF 表達,所以採用延遲加入:每當求解器回傳彼此分開的島群,就加入一條要求該島群向外搭橋的子句,然後再求解一次。

產生器會隨機長出一片群島,再封鎖已找到的解、要求求解器另找一個,藉此證明唯一性。到實驗室試試不同的求解器模式吧。

よくある質問 · FAQ

數橋常見問題

什麼是數橋(Hashiwokakero)?
數橋(Hashiwokakero,橋をかけろ,意思是「把橋搭起來」),又稱造橋、Bridges 或 Hashi,是 Nikoli 推出的日本邏輯謎題。格子上有標著數字的小島,你要用水平和垂直的橋把它們連起來,讓每座島的橋數剛好等於它的數字,橋不交叉,而且所有島連成一個整體。
兩座島之間最多能搭幾座橋?
最多兩座。位在同一列或同一行、中間沒有阻隔的兩座島,可以用單橋或雙橋相連。
橋可以交叉嗎?
不行。橋只能水平或垂直直線延伸,既不能和其他橋交叉,也不能越過島。
所有島都必須連通嗎?
是的。完成的謎題中,你可以沿著橋從任何一座島走到任何另一座島,所有島構成一個完整的網路。
一定只有唯一解嗎?
在 Hashi 上是的:每道產生的謎題都經過 SAT 求解器檢查,證明不存在第二個解,所以你永遠不必用猜的。