標準的方塊塗色題目會問:在 n × n × n 的方格中,有多少個單位立方體擁有特定數量的塗色面。解法是將所有位置分成四個互斥的類別——8 個角、12(n − 2) 個邊內部立方體、6(n − 2)² 個面內部立方體,以及 (n − 2)³ 個未塗色的核心立方體——其中「任何塗色面」的數量等於 n³ − (n − 2)³。每一道塗色立方體計數題都可以化約為選對類別並寫出對應的算式,因此同一套方法可以處理三個塗色面、兩個塗色面、剛好一個塗色面、沒有塗色面,或至少一個塗色面的題目。由於這四個類別把全部 n³ 個單位立方體都劃分完了,加總起來一定會等於總數,這是在送出答案前最快驗算的方式。所有題目的設定也都一樣:先把一個大正方體的每一個外表面塗色,再把它切成大小相同的單位立方體,所以不同題目之間唯一會變的只有方格大小 n,以及題目問到哪一個位置類別。一旦確定這兩項,答案就是一行公式,而不是靠猜的。

cube painting question
方塊塗色題目:利用位置類別來解題

用位置類別法來計算塗色立方體

這些公式之所以成立,是因為塗色面只能透過三個位置之一接觸到單位立方體:大正方體的角、大正方體的邊(但不是角),或大正方體面的內部(但不在任何邊上)。這三個位置互斥,而且隱藏核心以外的所有立方體都剛好落在其中之一。隱藏核心——也就是從每面各剝掉一層單位厚度後剩下的邊長 n − 2 的小立方體——完全不會碰到任何顏色。由於這四個類別不重疊,並且加總起來剛好涵蓋了全部 n³ 個單位立方體,不論 n 多大,對它們所做的運算結果都能保持一致。

分類正是避免方塊塗色題最常見錯誤的關鍵。把「邊」和「角」一起數的人,往往會把 8 個角重複算一次,導致答案膨脹;忘了從邊的數量中扣掉角的人,會得到 12n 而非 12(n − 2);把「剛好一個塗色面」當成「任何塗色面」的人,會誤把邊上的立方體算進去。只要在腦中的計算紙上依固定順序分別寫下這四個類別,就能一次同時排除上述三種錯誤,並讓答案隨時能對應題目的各種問法。

四個互斥的位置類別

一旦知道 n,每個類別都有一個封閉式的算式:

位置類別塗色面數數量
大正方體的角38
邊的內部(非角)212(n − 2)
面的內部(不在任何邊上)16(n − 2)²
隱藏核心0(n − 2)³
至少一個塗色面1、2 或 3n³ − (n − 2)³

前四列把整個立方體完整劃分。最後一列則把有塗色的類別合在一起,也等於總數扣掉隱藏核心,可以作為快速的交叉驗算。當 n = 2 時,邊內部與面內部兩列的值都為 0,因為 2 × 2 × 2 的切法只會留下 8 個角、沒有任何內部層,這是在信任計算結果之前一個很實用的健全性檢查。

方塊塗色題中的兩種問法會決定要套用哪一列。「剛好一個塗色面」只能使用面內部那一列,並排除所有角與邊上的立方體。「至少一個塗色面」則包含所有有塗色的類別,因此等於前三列的總和,或者等價地等於 n³ − (n − 2)³。仔細讀題,是在同一個 n 之下選用 6(n − 2)² 或 n³ − (n − 2)³ 的差別所在。

範例演練:4 × 4 × 4 的切塊

方塊塗色題一個常見的版本使用 4 × 4 × 4 的切法,會產生 64 個單位立方體。將 n = 4 代入每個公式可得:

  • 角:8
  • 邊內部立方體:12(4 − 2) = 12 × 2 = 24
  • 面內部立方體:6(4 − 2)² = 6 × 4 = 24
  • 未塗色核心:(4 − 2)³ = 8
  • 任何塗色面:4³ − (4 − 2)³ = 64 − 8 = 56

四個類別的總和為 8 + 24 + 24 + 8 = 64,剛好等於單位立方體的總數。「任何塗色」的數量也等於 8 + 24 + 24 = 56,兩種算法結果一致。這也是 Math Is Fun 針對 4 × 4 × 4 切塊所公布的同一個分配方式,而所有其他塗色立方體題目也都遵循這個規律。

若換成更大的切塊(例如 8 × 8 × 8),邊與面的數量會主導結果,而角的數量仍然維持 8,這也是為什麼每次都必須從題目讀出 n,而不是憑記憶作答。

解開塗色立方體謎題中的五道題目

塗色立方體謎題把上述的位置類別法變成了一個五回合的練習遊戲。每一回合會針對一個 n × n × n 切塊中的某個特定類別詢問數量,四個選項以二乘二的格子排列,可以用方向鍵、Tab、Enter 或空白鍵移動,也可以用手機點選。觸控、指標與鍵盤輸入的行為完全相同,因此不論使用哪種裝置,都能採用同一套流程。

  1. 讀出題目中的方格大小,並判斷題目問到哪一個位置類別:角、邊內部、面內部、核心,或任何塗色面。
  2. 將 n 代入腦中計算紙上對應的公式。只寫下屬於該類別的因子,避免讓角的數量 8 流入邊的計算。
  3. 檢查題目的用詞。若題目寫「剛好一個塗色面」,使用 6(n − 2)²;若寫「至少一個塗色面」,則改用 n³ − (n − 2)³。
  4. 把算出來的結果與畫面上的四個選項比對,再用方向鍵移至該選項,並用 Enter 或空白鍵確認,或者直接點選該選項。
  5. 對剩下的回合重複同樣步驟。每答對一次加 200 分,整個謎題會在五回合結束、按下重新開始,或陷入死局時結束。

這個謎題是確定性的,所以每次進行都會出現同樣的五道題目。這讓它更像是一種方法練習,而不是猜題遊戲:一旦記住公式,每次重新開始都是一次在算術之前磨練分類步驟的機會。

計分、錯誤與重新開始的機制

塗色立方體謎題中,每一回合恰好值 200 分,五回合全對就能得到滿分 1,000 分。謎題處理錯誤的方式是獎勵仔細讀題,但不會過度懲罰不小心多點一下的情況。在一回合中,你第一次選錯的不同選項可以用另一個選項取代,而且只有那第一次的不同錯誤會計分。在同一回合重複點選同一個錯的選項不會消耗第二次錯誤機會,所以不小心雙擊並不會因此就結束一回合。

不過,第二個不同的錯選會鎖定該回合。一旦鎖定,分數與進度會停留在當下,不再接受任何更動。重新開始的控制項會把整個謎題重置,從頭開始進行同樣的五道固定題目。由於題目是固定的,第二次進行是更乾淨地套用位置類別法的機會,而不是期待數字會變簡單。

位置類別公式的出處

角、邊內部、面內部與核心的算式並非為了這個小遊戲而憑空發明。位置類別的架構以及多種方塊尺寸的範例表格,已由 劍橋大學的 NRICH 收錄。同一組算式也出現在 Snow College 數學競賽官方解答中,針對標準的塗色立方體題目;而 Math Is Fun 公布的 4 × 4 × 4 切塊分配方式,也完全符合這個四類別的劃分。塗色立方體謎題中的自動化檢查也會驗證從 n = 2 到 20 的分割守恆、確認每回合剛好只有一個正確選項,並把計分、修復、去重、死局、重新開始、游標邊界與終態不可變等機制鎖定,避免迴歸。

對於也喜歡拆解立體堆疊的讀者來說,把可見與隱藏的方塊分開處理的同樣習慣,也能直接應用於含有隱藏方塊的算方塊謎題,在確認總數之前必須先重建出直行。先分類再計算的習慣,可以從方塊塗色題直接轉移到任何會有方塊被遮住的情境。