かすみ🍀ワ民
Time Limit Exceeded到底是什麼啦
凛BOT@サイボーグちゃん
你那是什麼臉!好好笑喔
小曦キラキラ
隨便查了一下@@||
球磨川禊@TW
簡單的說就是你的運算時間長到一個預設的限制值,然後他就強制結束程式並回傳這個結果給你
球磨川禊@TW
基本上所有線上運算的服務都會有這種回應,用來表示說你的運算需要優化,或是有BUG要除
かすみ🍀ワ民
小曦キラキラ : 謝謝小曦!感覺有可能是三
球磨川禊@TW : 可是只有在測試值很大量的時候才產生,為什麼範例的三個測試值都完全沒有這種問題呢
球磨川禊@TW
這個問題要先看你寫了什麼東西而定,我連你寫了怎樣的程式都不知道實在是不知道要怎麼抓藥
かすみ🍀ワ民
球磨川禊@TW : 我很想給你看可是又不想給你看XD 我真的寫的好爛
球磨川禊@TW
球磨川禊@TW
反正一般來說會先碰到這種狀況的,大多是寫遞迴程式
然後遞迴的效能絕大多數都很差
かすみ🍀ワ民
球磨川禊@TW : 對!我還寫了兩個ww 可是之前這樣寫也沒遇到這問題
かすみ🍀ワ民
好像有效能比較好的寫法但我有點忘記了要去翻一下之前寫的
球磨川禊@TW
那只是表示,之前的東西太小咖
球磨川禊@TW
雖然遞迴不需要多大咖就可以世界慢了
かすみ🍀ワ民
球磨川禊@TW : 原來是這樣啊~~好的我再研究一下
Agr
優化程式碼 從現在開始 (X
みうな❄️低浮上
程式佬
球磨川禊@TW
因為以費式數列為例的話,你每計算一階,就是重新開一個新的費式數列計算程式出來
以現實狀況舉例就有點像是
你每一階都重新拿一張計算紙出來算,儘管計算紙其實還有一堆空白空間也是這樣,而且是從列式開始重寫,只是起始數值會不同而已
你一直在花時間重新抄一個只有參數不同的題目
球磨川禊@TW
遞迴計算幾乎都是花費了多餘的時間在做這件事情,遞迴深度比較少的時候時間是感覺沒差太多,但深度夠深的時候,看不到終點
球磨川禊@TW
更不用說像是費式數列這種內部計算簡單到不行的東西,抄題目比你計算內容還要耗時,然後你還一直重抄
球磨川禊@TW
所以以小曦貼的網址來看的話,麵麵你原本以為是3,但實際上恐怕是2
費式數列或是n階層其實真的是個很好的範例
光是照著程式邏輯自己手寫一次你進入了幾次你自己寫的程式,大概各自計算一次計算a3跟a5你就會知道為了往下一層,你增加的運算量有多少
かすみ🍀ワ民
Agr : 我⋯我會努力的,還真的沒優化過
みうな❄️低浮上 : 就是你樓上跟你樓下
Agr
優化很重要 寫程式要進步的一環
かすみ🍀ワ民
Agr : 是的AGR老師! 球磨川禊@TW : 真的哦階層的概念我還沒有很懂,我先把你說的貼在我的記事本晚一點認真來研究一下!
球磨川禊@TW
其實不是階層的概念,而是遞迴的概念
遞迴的概念就是不斷開一個跟原本的自己長得一模一樣的程式處理中間的流程
球磨川禊@TW
這也是為什麼遞迴的前提是須要終止條件,不然他不知道要停
球磨川禊@TW
階層那個只是在講n!的那個階層,不是什麼別的東西,只是普通的國高中數學的那個而已
球磨川禊@TW
總而言之,除非逼不得已,不然不要去碰遞迴
球磨川禊@TW
或是你就乾脆把題目跟程式碼貼出來大家一起集思廣益也是一種很快的方法
載入新的回覆