對於第一個問題,可以通過只存儲一組盒B和C等於2A + A有每個:
ADD 2, 1, 1
ADD 3, 1, 1
現在,只需減去從每箱:
SUB 2, 2, 1
SUB 3, 3, 1
這將導致存儲無處不在。產生的程序是這樣
ADD 2, 1, 1 // Box 1 = A Box 2 = 2A Box 3 = C
ADD 3, 1, 1 // Box 1 = A Box 2 = 2A Box 3 = 2A
SUB 2, 2, 1 // Box 1 = A Box 2 = A Box 3 = 2A
SUB 3, 3, 1 // Box 1 = A Box 2 = A Box 3 = A
對於第二個問題,一個可愛的伎倆將是其自身的價值來劃分有些盒子來裝1進去。例如:
DIV 1, 1, 1
現在,讓我們把2插入盒2通過加倍盒1的內容,並且將其存儲有:
ADD 2, 1, 1
現在,讓我們把4成箱3通過的內容倍增盒2並將其存儲有:
ADD 3, 2, 2
接着,在箱3的內容添加添加2至框3這使得盒3保持6:
ADD 3, 3, 2
最後,通過增加在內容箱3加1框三此使得箱3擁有7:
ADD 3, 3, 1
總計劃因此
DIV 1, 1, 1 // Box 1 = 1 Box 2 = ? Box 3 = ?
ADD 2, 1, 1 // Box 1 = 1 Box 2 = 2 Box 3 = ?
ADD 3, 2, 2 // Box 1 = 1 Box 2 = 2 Box 3 = 4
ADD 3, 3, 2 // Box 1 = 1 Box 2 = 2 Box 3 = 6
ADD 3, 3, 1 // Box 1 = 1 Box 2 = 2 Box 3 = 7
希望這有助於!
您是否必須從各自的框中刪除B和C,以便每個框最後只有一個字母:A? – kasavbere 2012-03-22 21:13:45