作者lions0164 (LionsHeart)
看板C_and_CPP
標題[問題] ACM 254 TLE
時間Thu Mar 17 02:37:37 2011
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
CODEBLOCKS 10:5
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
無
問題(Question):
ACM254-河內塔 遞迴寫法
餵入的資料(Input):
100 12345678901234567890
預期的正確結果(Expected Output):
60 18 22
錯誤結果(Wrong Output):
TLE
程式碼(Code):(請善用置底文網頁, 記得排版)
http://paste.plurk.com/show/399701/
補充說明(Supplement):
用普通的河內塔遞迴來運算
利用大數減法和步數每次加1來判斷是否到達要求移動的次數
但這樣的寫法在處理大數時 一定會TLE
想請問有沒有辦法用這方法但是能夠讓他不TLE呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.123.101.139
推 cismjmgoshr:原PO要求保留遞迴架構... 03/23 02:24
→ cismjmgoshr:基本上100層的河內塔是不太可能用遞迴一步一步做啦 03/23 02:25
→ cismjmgoshr:現今最快的超級電腦速度大概是每秒4.701x10^15個指令 03/23 02:25
→ cismjmgoshr:100層的河內塔大約要移動1.267x10^31次才能搬完,兩者 03/23 02:25
→ cismjmgoshr:數量級差太多了 03/23 02:25