魔方最少知道幾個方格就可以推算出其他所有格呢? | 知乎問答精選

 

A-A+

魔方最少知道幾個方格就可以推算出其他所有格呢?

2016年10月18日 知乎問答精選 暫無評論 閱讀 40 ℃ 次

假如是3*3的魔方

【楊旭的回答(8票)】

咳咳,你的問題很不嚴謹,所以我先玩個文字遊戲再來說說我的想法。

先來詭辯一下:

若以魯比克官方配色(根據色彩專家的建議對原配色方案的改進——白黃相對、紅橘相對、藍綠相對,且藍、橘、黃三色以順時鐘排列)來算,因為六個中心塊的相對位置不會變化,因此根據中心塊可推斷平行面的顏色。

?

圖為常見三階魔方

這裡我們假設一種特殊情況,就是魔方沒有打亂時的情況,亦即每個面都是純色的,那麼只需一個角塊就能還原整個魔方,原理如下

一個角塊包含三個顏色,由於面上所有方塊顏色一致,因此可以推斷對應三個面上中心塊的顏色,進而推斷對面中心塊的顏色,至此魔方還原成功,因此最少需要一個塊,三個面。

接下來根據隨機順序,談下我的想法(算術老師死的早啊,數學苦手,因此用了一種很簡單的推理方法,不能保證最少,只能保證上限(也就是說我是最差算法)*′ ?『*)

先來科普一下魔方結構:

三階魔方核心是一個軸,並由26個小正方體組成。包括中心方塊6個,固定不動,只一面有顏色。邊角方塊8個(3面有色)(角塊)可轉動。邊緣方塊12個(2面有色)(稜塊)亦可轉動。

以下是魔方的展開圖:

魔方沒有玩過,所以把問題轉化為類數獨的方式來解,亦即最多需要多少個色塊就能通過推理填補一個隨機魔方。

首先用數字來前後左右上下分別編為1前,2後,3左,4右,5上,6下,代表對應面的顏色。

1.中心面,知道從一個頂點出發的三個面的中心面,根據中心面的相對關係可以得出另外一面顏色,因此這裡可以省3個面。

2.稜塊,一共12稜塊,可根據塊上顏色描述為(1,3,表示前左交界邊上稜塊,下面不再贅述),(1,5),(1,4),(1,6),(2,3),(2,5),(2,4),(2,6),(3,5),(3,6),(4,5),(4,6)。下面開始推理(手邊沒有紙筆,全是腦補,不知有沒暈掉)

首先給出(1,3),(1,4),(1,5)那麼接下來再遇到(1,X),我們就可確定X=6(這裡3,4,5,6可以互換,大意就是3推1);

下面考慮(2,6),(3,6),因為(1,6)可知,因此接下來再遇到(X,6),可推斷X=4(2推1);

接著若有(2,3),(2,5),因為(2,6)已知,因此我們再遇到(2,X),可推斷出X=4,(同樣是2推1)

這時還剩(3,5),(4,5),找到3,4兩面,剩下兩面自然就是5咯,

這裡一共可以省下1+1+1+2=5面;

3.角塊,按照上述編碼可得(1,3,5),(1,3,6),(1,4,5),(1,4,6),(2,3,5),(2,3,6),(2,4,5),(2,4,6),下面開始推理(繼續腦補,XD):

若是已知(1,3,5),那麼再次遇到(1,3,X)時,我們可以確定X=6;

同理,(1,3,5)可推(1,X,5),X=4;以及(X,3,5),X=2;

現在還剩(1,4,6),(2,3,6),(2,4,5)(2,4,6);

按照上述邏輯,根據(2,3,5)可推(2,3,X),X=6;(2,X,5),X=4,下面兩個角塊找出1,6兩面剩下的填4。

這裡可以發現可節省面為1+1+1+1+1+2=7面,加上前文所述攻

已知魔方擁有54面,那麼減去節省的3+5+7=15面,則最少需要39面才能還原魔方。

由於腦補的我暈頭轉向,算法優化不能,所以權當最劣算法,結合先前情況可知,隨機魔方還原,所需面數N≤39。

標籤:-數學 -趣味數學 -楊旭 -程序 -香飄飄 -freealbert


相關資源:





給我留言