看板 C_and_CPP 關於我們 聯絡資訊
換個想法 A,B,C三個柱子,n個盤子,目標是把所有的盤子從A搬到B,目前移動m次 (1) 如果 m < 2^(n-1) 目前正在把第1個盤子到第(n-1)個盤子從A搬到C,進行到第m個步驟 (2) 如果 m = 2^(n-1) 第1個盤子到第(n-1)個盤子都已經搬到C,這個步驟把第n個盤子從A搬到B (3) 如果 m > 2^(n-1) 正在把第1個盤子到第(n-1)個盤子從C搬到B,進行到第( m - 2^(n-1) )個步驟 每一次判斷的過程可以確定最底層的盤子現在在哪個柱子,以及上面其他的盤子進行到哪 個步驟。 -- ∫work dt = success -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.227.186.36
LPH66:嘛, 你的想法只對了一半 (n 是奇數的那一半) 03/17 10:08
LPH66:n 是偶數時照題目給定的做法要把 B 和 C 對調才對 03/17 10:08
cismjmgoshr:嗯...樓上說得對,我疏忽了 03/17 15:15