2015年8月16日 星期日

為什麼就是差一格呢?─格鬥積木與奇偶性


  之前的旅遊途經中部的車埕鎮時逛了一下,早期以木頭的生產與加工為主,將加工後的原木,以鐵路線運送出去。現在這個小鎮,隨著日月潭風景區被整理,發展觀光。在這裡可以看到許多當時與木頭製造產業有關的老建築與歷史,也有讓人覺得到另外一個時空的老街。最讓我有興趣的,還是這裡賣的一些木製手工藝品。

  在紀念品店,找到了一組益智玩具(結果我還是只會看上益智類的東西啊!),名稱取的不怎麼樣,叫「格鬥積木」,就不吐槽他們取名字的品味了,益智玩具最重要的還是設計和能夠讓人動腦的程度。這組積木很久以前在某個活動中有玩過,感覺很簡單曾經想自製過,不過因為自己的木工技能太差而放棄了。現在可以直接很方便的買一組帶回家,二話不說,馬上掏錢結帳!


  左邊的照片中就是一整組九種不同形狀不同顏色的積木,外加兩顆骰子。這樣的造型與顏色讓人很直覺的想到俄羅斯方塊。規則也相當簡單:丟兩顆骰子,把丟出來顏色的積木移除掉,用剩下的七塊積木拼成一個3x3x3的實心立方體。

  這樣的規則感覺有點像是桌上遊戲Ubongo的立體版。很快的嘗試了幾次,如下面的照片,3x3x3的空間比想像中還要容易塞滿,有些組合讓我卡了一段時間,但有些組合很快就拼出來,該說是有難度的差別,還是因為一開始思考方向不對卡關呢? 
骰到白色和藍色的狀況

  遇到這種遊戲,數學思考的職業病又會發作想來好好把整個遊戲分析一遍。先從丟骰子決定這件事開始好了!為什麼不管丟到什麼顏色都可以拼出來呢?觀察一下,雖然兩顆都是六面骰,其中一顆骰子上面只有三面黑色三面白色,另外一顆的六面則分別是不同的彩色。以數量上感覺很合理,黑白的積木是3個小方塊組成,其他的彩色積木各自是4個小方塊組成。把黑白和彩色各拿掉一個,則剩下來的小方塊數量是3+4x6=27剛好是3x3x3的立方體大小。

  再稍微觀察一下,黑白兩個積木剛好是拿3個立方體黏在一起所有可能的狀況。那麼,彩色的七個積木是不是立體空間中所有可能的4個立方體的組合呢?還差一種:四個立方體排成一直線,在俄羅斯方塊遊戲中可以用來一次消四排直條。而少了這種形狀積木的理由很容易可以想像─因為長度是4的積木不可能放進3x3x3的立方體空間中。


  感覺這種基本的算數部份快分析完了,就剩一個小細節:有七個彩色的方塊,但是骰子只有六個面,到底哪一個顏色沒有出現在彩色的骰子上呢?直覺告訴我是綠色 或紫色其中之一,因為這兩個方塊彼此是對稱的,而剩下的方塊則是和自己對稱,因此,拿掉綠色的狀況,可以把所有的方塊左右方向改變後換成拿掉紫色的狀況。 因此這兩種的題目其實解法一樣,沒有挑戰性,拿掉其中一個可以讓題目有最多不同的組合。左邊的照片顯示了把綠色和紫色對換的方法。

  但是讓我晴天霹靂的是,我的直覺竟然錯了!有仔細看照片就會注意到,綠色和紫色都出現在彩色的骰子上。到底是哪一種顏色沒有出現呢?把彩色骰子的顏色全部確認過,總共是紅、橘、黃、綠、藍、紫。少掉的顏色是棕色,也就是長的像是T字型那塊,需要出現在所有的組合中。

  棕色那塊和其它的比起來看起來就沒什麼特別的(當然,很可能是顏色造成的錯覺),沒有道理一定非它不可啊!很不信邪的就來挑戰棕色那塊拿掉後的組合,試了一下,無論是把黑色那塊拿掉還是白色那塊,竟然都拼不出來!現在是什麼狀況?因為遊戲的規則書並沒有保證有解答,有以下兩種狀況。狀況一,這種組合其實有解答,只是我沒有找到,為了遊戲的難度設計而拿掉這個組合。狀況二,這其實因為某種特別的理由無解,不要去踩這個地雷。很好,這種感覺可以解但是還不知道解答的問題,對於我鑽牛角尖的個性來說,一整個就是解不開晚上就會因此睡不著的狀況。

最壞的狀況,拿出紙筆一個一個記錄,確定我所有的組合都試過,這樣就可以找到解答或者證明無解了。不過這個做法實在太沒有數學的美感了,積木背後有沒有什麼漂亮的概念能夠告訴如果有解的話我該怎麼找到解答呢?

  出去吃晚餐的同時,開始在腦海中翻找有哪些數學的思考方式可以用,就好像是臨時想到要修腳踏車的時候,把工具箱倒出來看有什麼適合的工具,找到的工具都來憑感覺試試看一樣。這時,想到的是奇偶核對的工具好像滿適合的。

所謂的奇偶核對,就是把所有的方塊分成兩類,本來習慣是用黑色和白色來標記,但是因為積木中已經有黑白了,在這裡我們用圈和叉來標記不同的兩類。從一個角落的方塊標記為圈,然後把圈旁邊的方塊標記成叉,叉旁邊的方塊標記成圈,如果是平面的狀況,就會成為像是西洋棋盤一樣黑白相間的結構,而立體空間中則如旁邊的照片所示。試試看從這樣的角度來看,能不能得到一些洞見呢?

  把3x3x3方塊按照位置分成頂點、邊、面還有中心,可以發現他們可以用圈和叉歸類如下。總共有14個圈和13個叉。


位置
角落
中心
數量
8
12
6
1
屬性
o
x
o
x


  再來,用同樣的方式,把不同的積木放在不同的位置,觀察他們各自可能會有的圈叉數量,會發現黑色與白色都一定是兩個比一個的分布,大多數的彩色積木不管放哪邊,都只會佔據兩個圈兩個叉,除了黃色與棕色的以外。


顏色
圈叉數量
(2,2)
(2,2)
(3,1) or (1,3)
(2,2)
(2,2)
(2,2)
(3,1) or (1,3)
(2,1) or (1,2)
(2,1) or (1,2)



  因此,雖然這種分析看起來有點神來一筆,但是很神奇的,用這種方法來看積木,我們可以發現在棕色拿掉的狀況下,為了要總共有14個圈13個叉,黃色的積木 需要放在有三個圈一個叉的位置,而無論我們用的是黑白積木中哪一個,要放在兩個叉一個圈的位置。黃色積木可以放的位置,在旋轉整個方塊後,只有可能是照片中的那兩種。怪不得之前一直拼不出來,憑著直覺,通常都會把黃色那塊放在角落的位置,也就會造成一個圈三個叉的結果!

從這個大發現開始,感覺可以捲土重來試試看這樣放拼不拼的起來,不過很快的又卡關了。看起來再找其它的分析來鎖定一些資訊好了。

  再次動腦,嘗試錯誤了好長一段時間,弄到頭腦快炸掉的狀況,總算又找到了一個有用的觀察了:一開始以位置來分類的時候,在六個面中心的方塊也就總共6個,而因為黃色的積木要放在這些奇怪的位置,最起碼就會用掉2個這類的方塊。感覺這種方塊消耗量好像有點太大,試試看其他的積木會不會需要消耗在六個面中心的方塊呢?嘗試後可以建出以下的表。


顏色
最少要用幾個面中心方塊
1
0
1
1
1

  到目前為止,所有積木都選最省六面中心方塊的解答時,就剛好會把所有六面的中心方塊全部用掉。可以藉此鎖定如果有解的話,各種積木的擺放位置。而最後臨門一腳的,就是黑色與白色積木。別忘了在這個狀況下,無論是拿掉黑色還是白色積木,剩下的一個都需要提供兩個叉和一個圈。
顏色
在一圈二叉的狀況下最少要用幾個面中心方塊
1
0
 
  經過漫長的觀察與分析,還有眾多的表格之後。總算有了結果,如果黑色的積木被拿掉的話,則白色的積木也消耗了1個在某一面中心的方塊,因此最少需要用7個,超出我們的預算。到此為止,總算證明出來拿掉棕色與黑色積木的狀況下,剩下的七片是沒有辦法塞進3x3x3的方塊中的。原來骰子丟不出棕色還真的有它的道理在!

  以上這個思考過程,感覺好像在唸奇怪的咒語之後召喚了具有神秘力量的異世界怪獸來幫忙打魔王一樣。有些時候有用,有些時候召喚的怪獸和要解決的魔王問題一整個屬性不合完全提供不上戰力。不過工具還是愈多愈好,能夠打敗魔王的機會會比較高,最起碼這次我們還是成功的拯救了世界,也對這套積木有更多的洞見,像是如果是黃色被拿掉的狀況,我們也可以得到差不多的分析而開外掛知道棕色積木該放哪。哇哈哈!這樣之後玩這套積木給別人看時就比較不怕卡關被別人笑了。

後記:後來在以上分析的幫助之下,知道了如果有辦法解各片能夠放的位置,總算成功解開拿掉棕色與白色兩片的狀況了,這個狀況是解的開的,只是比較難一點而已。就不在這裡暴雷了。

沒有留言:

張貼留言