b190. 97七區資訊學科5(改編)
標籤 : 河內塔 遞迴
通過比率 : 203人/294人 ( 69% ) [非即時]
評分方式:
Tolerant

最近更新 : 2008-12-24 20:11

內容
一個必有偶數層的河內塔,有a b c三根柱子,假設所有的環原本在a柱上,請將奇數號的環移到b柱上,偶數號的環移到c柱上,大的環不能疊在小的環上,請輸出移動過程和最少步數。

河內塔的規則為:
有三根柱子a、b、c。a桿上有N個(N>1)穿孔圓盤,盤的尺寸由下到上依次變小。
要求按下列規則進行移動:
1. 每次只能移動一個圓盤,
2. 大盤不能疊在小盤上面。
輸入說明
每一組只有一個整數,代表有n個環。
輸出說明

輸出移動步驟時,需按照『ring x : y -> z'的格式,其中x為整數,y、z為a、b、c其中一個。
最後在輸出最少步數。
範例輸入 #1
4
範例輸出 #1
ring 1 : a -> b
ring 2 : a -> c
ring 1 : b -> c
ring 3 : a -> b
ring 1 : c -> a
ring 2 : c -> b
ring 1 : a -> b
ring 4 : a -> c
ring 1 : b -> a
ring 2 : b -> c
ring 1 : a -> b
共移動了 11 步
測資資訊:
記憶體限制: 512 MB
提示 :
請善用遞迴(以兩層分隔)
標籤:
河內塔 遞迴
出處:
97學年度彰雲嘉區資訊學科能力競賽 [管理者: taichunmin (和風信使) ]

本題狀況 本題討論 排行

編號 身分 題目 主題 人氣 發表日期
沒有發現任何「解題報告」