0
在只有4個垃圾箱的情況下,我被下列問題困住了。我可以做6或8,但不是4.另外,有人可以幫我想出一個通用的算法呢?每次排序二個垃圾箱
您有n個垃圾箱(以B A B A ...的交替順序排列),您可以一次移動2個垃圾箱並獲得2個插槽。對它們進行排序,以便最終所有「B」箱中的所有「A」箱都保留下來。它們應該都是相鄰的,即最終沒有差距。例如:
_ _ _ _ B A B A
感謝
編輯:是的,你必須一次移動兩成相鄰箱成兩個相鄰的斑點。
編輯2:不,你不能轉置垃圾箱。這裏有6個箱的例子:
_ _ _ _ _ _ BABABA
_ _ _ _ ABB _ ABA
_ _ _ _ ABBBAA _
_ AAABBB _ _ _
當您移動2個垃圾箱時,他們是否必須移動到相鄰的位置?當你選擇兩個箱子移動時,你是否必須選擇兩個相鄰的箱子?如上所述,這不是很清楚.. – 2014-10-18 18:30:32
是@MikeDinescu,我編輯了這個問題 – Riz 2014-10-18 18:34:34
當你移動2個垃圾箱時,你能移動它們嗎? (也就是'__BA' =>'AB__'?當你將兩個箱子移動到兩個相鄰的點時,這些點需要是空的嗎? – dbc 2014-10-18 18:46:09