問題 P 動態規劃 收益

2021-09-26 15:32:10 字數 966 閱讀 1226

題目描述

「建太空梯進入太空要1兆億?」魔法學院的院長瞪大了眼睛。

「這只是基礎設施的費用,後期還要……」墨老師掰著手指算。

「哎呀,現在地主也很窮啊,學院的錢批下來就這麼多,你想辦法用這筆錢在債券市場上獲得最大收益吧。」院長皺著眉頭。

簡單來說,就是你有一筆錢,你要將這筆錢去投資債券,現在有d種債券,每種債券都有乙個價值和年收益,債券的價值是1000的倍數,問你如何投資在n年後的獲得最大收益。

輸入第乙個為乙個整數m,表示有m組資料。

每組資料第一行有兩個整數,表示初始資金(不超過50000)和年數n。

每組資料第二行為乙個整數d(1 ≤ d≤10),表示債券種類。

隨後d行每行有兩個整數,表示該債券的價值和年收益。年收益不會超過債券價值的10%。

所有資料不超過整型取值範圍。

輸出每組資料,輸出n年後獲得的最大收益。

複製樣例資料

1

10000 4

24000 400

3000 250

樣例輸出

14050
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define inf 0x3f3f3f3f

typedef long long ll;

using namespace std;

int m,n,d,cs,dp[50010];

struct nodep[20];

int main()

for(int i=0;iprintf("%d\n",cs);

}return 0;

}

動態規劃系列(2) 收益最大問題

考慮乙個問題,如果有多個任務,每個任務有自己存在時間段 任務之間的時間段可能有重複 求如果選擇任務可以使收益最大化,計算收益時,每個任務段之間不能有重合。我們舉個實際的例子,存在8個任務,如下圖所示,圖中標明了每個任務的時間段和收益。這個問題我們這樣考慮,從頭到尾,當看到乙個任務時,此時不考慮排在後...

動態規劃問題

思想 如果乙個問題是由交疊的子問題所構成,那麼我們就可以用動態規劃技術來解決它。一般來說,這樣的子問題出現在對給定問題求解的遞迴關係中。這個遞推關係包含了相 同問題的更小子問題的解。動態規劃法建議,與其對交疊子問題一次又一次的求解,不如把每個較小子問題只求解一次並把結果記錄在表中。例題 0 1揹包問...

動態規劃問題

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 ctest有n個蘋果,要將它放入容量為v的揹包。給出第i個蘋果的大小和價錢,求出能放入揹包的蘋果的總價錢最大值。輸入 有多組測試資料,每組測試資料第一行為2個正整數,分別代表蘋果的個數n和揹包的容量v,n v同時為0時結束測試,...