#1976. 汉诺塔问题
汉诺塔问题
說明
約世紀末,在歐州的商店中出售一種智力玩具,在一塊銅板上有三根杆,最左邊的杆上自上而下、由小到大順序串著由個圓盤構成的塔。 目的是將最左邊杆上的盤全部移到中間的杆上,條件是一次只能移動一個盤,且不允許大盤放在小盤的上面。 這是一個著名的問題,幾乎所有的教材上都有這個問題。 由於條件是一次只能移動一個盤,且不允許大盤放在小盤上面,所以個盤的移動次數是:這是一個天文數位,若每一微秒可能計算(並不輸出)一次移動,那麼也需要幾乎一百萬年。 我們僅能找出問題的解決方法並解决較小值時的漢諾塔,但很難用電腦解决層的漢諾塔。 假定圓盤從小到大編號為
輸入格式
輸入為一個整數後面跟三個單字元字串。 整數為盤子的數目,後三個字元表示三個杆子的編號。
輸出格式
輸出每一步移動盤子的記錄。 一次移動一行。 每次移動的記錄為例如a->3->b的形式,即把編號為3的盤子從a杆移至b杆。
樣例
2 a b c
a->1->c
a->2->b
c->1->b