看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) Code::Blocks (C++) 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) No 問題(Question): 題目網頁:http://luckycat.kshs.kh.edu.tw/homework/q107.htm 測試過exampe及板上爬文到的測資都通過 時間也都小於1秒,但丟上去後還是出現TLE 餵入的資料(Input): 216 125 5764801 1679616 64 1 1 0 483736625 481890304 2147483647 2147483646 0 0 預期的正確結果(Expected Output): 31 671 335923 30275911 6 127 1 1 615441 1931252289 1 4294967293 錯誤結果(Wrong Output): output和UVA toolkit的output一樣,答案應該是沒錯 但是丟到UVA上卻會Time limit exceeded 程式碼(Code):(請善用置底文網頁, 記得排版) http://codepad.org/rjoysQd1 補充說明(Supplement): 丟進去的測資有原題目的測資,以及爬文爬到該注意的狀況 目前想不到是哪個部分會造成TLE,我自己執行那些大數時也是小於1s 麻煩前輩們指點一下是哪個部分有瑕疵,或是有沒注意到的special case 謝謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.111.129.79 ※ 編輯: Biboy 來自: 140.111.129.79 (11/08 19:47)
meconin:算 N 可加快,算出 N 後,應該只剩一些加減乘除,無迴圈 11/08 22:39
mythnc:http://codepad.org/NDWCOMJX 幫你改寫了一下 11/08 22:55
Biboy:感謝樓上,這樣寫也簡單多了! 看樣子是logf的問題吧! 11/09 08:10
x000032001:寫這種東西少用系統內建的好... 11/09 10:05
chchwy:重點不是系統內建logf不好 是浮點數誤差 11/09 14:12
chchwy:這題用pow或是log都很可能會有浮點數誤差 11/09 14:13
Biboy:我有想過誤差的問題,但是錯誤是TLE,就是這點讓我覺得怪 11/09 16:17
bleed1979:我剛試著把logf改為pow就AC了。原因應該是計算速度。 11/09 21:03
Biboy:原來logf比pow更複雜阿... 感謝B大幫忙測試 11/09 23:02