Dynamic programming,簡稱DP,是一種多階段決策出最佳解的方法,他會將問題分成子問題、子子問題...,拆成多個子問題進行求解,並且求出最佳解
DP 可以大致理解為是分治法 + 記憶法
以計算費氏數列為例:
計算 f(5):
可以看到圖中綠色的數字都會重複計算,而隨著 n 越大,重複計算的會越多。
此時可以將計算過的答案保存在記憶體中,用空間換取時間,大幅節省效能。
參考資料:https://www.gushiciku.cn/pl/pKW7/zh-tw
參考資料:https://codertw.com/程式語言/586675/
題目敘述:
測資的 Input/Output
題目的條件
看完題目,你要思考: