每個有效的 24 Game 答案都是一個算術表達式,必須恰好使用四個給定的數字一次,透過加、減、乘、除加以組合,並得出正好 24。24 Game Solver 會在此完整的規則空間中,搜尋任何由 1 到 99 之間的四個整數所組成的牌組,然後回傳最多 50 個符合規則的不同表達式。每個回傳的表達式都會以完整的算式呈現,並以 = 24 作為結尾,因此答案可以直接讀取,不必憑空猜測。由於搜尋在已公布的運算集合下是窮舉式的,這個工具能夠證明在某個規則下某組牌無解——沒有結果本身就是一種答案。這一點很重要,因為有些牌組(例如 3、3、8、8)只能透過分數形式的中間值求解,而普通的整數檢查會錯過這類解;其他牌組(例如 1、5、11、13)則在僅使用四則運算的情況下根本無解。試試 24 Game Solver,看看完整的規則集如何套用到你手上的牌組。

24 game answers
24 game answers

24 Game:每個答案背後的規則

根據 University of California, Santa Cruz mathematics program 的記載,標準的 24 Game 會給你四個數字,要求你用四則基本運算——加、減、乘、除——並透過括號來控制運算順序,把它們結合起來。每個數字必須恰好使用一次。不可將數字串接,不可重複使用任何數字,且目標值恆為正好 24。這些規則也在 4nums 這個長期運作的 24 Game 參考網站上獲得獨立確認。許多商業紙牌版本將數字限制在 1 到 10 或 1 到 13 之間,但決定「什麼算作有效答案」的規則集合是這個運算契約——四個數字、四種運算、括號、剛好等於 24。

不同的謎題有時會放寬或收緊這些規則。有些版本允許指數、階乘或小數點插入;有些版本則允許數字串接,讓 1 和 2 可以組成數字 12。24 Game Solver 刻意保留了標準契約:四個整數,每個僅使用一次,僅允許 + − × ÷ 與括號。它回傳的任何答案,在標準規則下同樣有效;而它判定為無解的牌組,在相同規則下也確實無解。

規則Solver 是否允許備註
每個輸入的數字恰好使用一次不可串接、不可重複使用
加、減、乘、除四則基本運算皆可
使用括號控制運算順序會在回傳的表達式中顯示
小數點插入僅限標準規則
指數、階乘、開根號不在此規則集的範圍內
將一元負號視為額外運算不屬於標準契約的一部分

為四個數字的牌組找出答案

24 Game Solver 接受 1 到 99 之間的四個整數,並搜尋所有合法的分組方式,因此使用步驟刻意簡短。整個搜尋過程完全在本機瀏覽器中執行,這意味著你所輸入的四個數字,以及由它們產生的表達式,都不會被上傳、儲存或綁定到任何帳戶。

  1. 在四個輸入欄位中,分別輸入 1 到 99 之間的恰好四個整數,每個欄位一個數字。每個值都必須是正整數;4 必須輸入為 4,而不是 2 + 2 或 2 × 2,因為 solver 會將每個輸入值視為一個整體恰好使用一次,不會再拆分。
  2. 選擇 Solve,以精確的分數形式窮舉搜尋所有合法的算術運算。在每一步中,solver 會從剩餘的項中選出兩個,分別以加法、乘法、兩種順序的減法,以及所有合法的除法順序加以結合,再將運算後的新項放回集合中,直到僅剩一項為止。
  3. 由內向外讀取任何回傳的表達式,或將「無解」的結果視為這些規則下的最終判定。回傳結果列表中的每一列都以 = 24 作為結尾,因此在你相信該答案之前,可以親手驗算其算術過程。

輸入若超出 1–99 的整數範圍,就屬於已驗證輸入契約之外的情況,solver 並非設計用來處理它們。如果你從某個卡牌遊戲複製了一組牌,而其中一個值是 0、負數或小數,則搜尋結果並不保證會產生有意義的結果。

Solver 如何處理分數形式的中間值

有些牌組乍看之下無解,卻能透過分數求解。最經典的例子就是 3、3、8、8。對這四個數字進行單純的、由左至右的整數檢查,永遠無法得出 24;但表達式 8 ÷ (3 − 8 ÷ 3) 可以。逐步拆解如下:

步驟 1:計算內層的除法 8 ÷ 3,得到分數 8/3。 步驟 2:從 3 中減去 8/3,得到 (9/3 − 8/3) = 1/3。 步驟 3:計算 8 ÷ (1/3) = 8 × 3 = 24。

這條運算鏈中的每個中間值都是最簡分數,而非四捨五入後的小數。Solver 以整數作為分子、正整數作為分數的分母儲存每個值,並透過最大公因數進行約分,最後以「分子 = 24 × 分母」的方式檢查等式是否成立。僅僅接近 24 的數值絕不會被視為精確相符,而有效的循環小數路徑也不會因浮點數四捨五入而遺失。這就是為什麼像 3、3、8、8 以及 1、5、5、5 這類牌組,在標準規則下依然能被正確求解的實際原因。

牌組預期結果重要性
1, 2, 3, 4可解基準乘積檢查
3, 3, 8, 8可解(需分數)需要分數形式的中間值
1, 5, 5, 5可解(需分數)循環小數路徑
1, 5, 11, 13無解確認在基本規則下的負面案例

由於每次搜尋都透過同一個窮舉程序執行,本表中的預期結果在建構上即受到保證——若某組牌沒有回傳任何結果,就代表在已公布的運算集合下,該組牌已被證明無解。

讀取回傳的表達式並驗算你的結果

Solver 會將每個接受的表達式以完整的算式印出,並以 = 24 作為結尾;列表上限為 50 筆結果,以保持頁面易於閱讀。由內向外讀取是最安全的做法。以 (3 − 8 ÷ 3) 為例,應先計算內層的除法,再計算外層的減法,最後處理外層的除法。同一種習慣也能避免最常見的讀取錯誤:將 3 − 8 ÷ 3 誤讀為 (3 − 8) ÷ 3 = −5/3,而非正確的 3 − (8 ÷ 3) = 1/3。

一旦取得表達式,便可以在紙上、以基本計算機,或針對較複雜的運算鏈使用 fraction calculator 進行驗算。若結果與印出的 = 24 相符,該答案即屬正確。若不相符,最可能的原因是把括號讀錯,而非 solver 的錯誤——因為頁面會以精確的表達式字串進行去重,只會列出遞迴搜尋已確認等於 24 的算式。

50 個表達式的上限代表列表是「一組有效的構造」,並非宣稱「數學上最多只有 50 個不同的答案」。重新排列後的表達式可能表達相同的算術概念,因此對於擁有許多等價形式的牌組,結果只會達到上限,而不會列出所有可能的排列組合。

當搜尋結果回傳無解時

「無解」的訊息本身就是一種答案。它代表在僅使用四則基本運算、括號,且每個輸入僅使用一次的條件下,窮舉搜尋並未找到剛好等於 24 的結果。在標準規則下,這就是針對所輸入牌組的最終結論。Solver 不會產生「最接近 24」的近似值,也不會為了找到結果而放寬規則;它要嘛回傳一個已驗證的表達式,要嘛回報沒有結果。

在接受「無解」的結果之前,有三件事值得確認。第一,四個數字必須被正確地複製——1、5、11、13 無解,但 1、5、11、12 卻有解。第二,原始謎題必須採用相同的運算規則;允許次方或階乘的謎題是不同的問題。第三,輸入必須是 1–99 範圍內的整數——0、負數與小數都超出已驗證的輸入契約;在這些情況下出現的「無解」訊息,可能只是反映輸入被拒絕,而非該組牌真的無解。

若某組牌的難度值得進一步研究,4nums 參考網站列出了在極為相近的規則集下的可解性分類,當你覺得答案「應該存在」時,這對於交叉驗證「無解」的判定非常有幫助。

若想深入了解,請參閱 24 Game Solution: Find Exact Expressions for Any Hand

若想深入了解,請參閱 24 Game Solutions: Why Fraction Math Beats Integer Guesses