題意:某人有一些錢,可以用錢去銀行購買債券,用來獲得利息。給定購買的年數,每年可以更換購買的債券型別。給定一些債券的**(是1000的整數倍)和可以獲得的利息。年數到時可以獲得的錢數的最大值。
思路:價值總是1000的倍數,就可以用1個單位代表1000.陣列就可以開得下了。
#include#include#includeusing namespace std;
const int maxn = 2000010;
int a[20],b[20];
int dp[maxn];
int main()
{ int t;
// freopen("in.txt","r",stdin);
// freopen("out.txt","w",stdout);
scanf("%d",&t);
while(t--)
{ int n,m,d;
scanf("%d%d",&m,&d);
scanf("%d",&n);
for(int i=0;i
POJ 2063 Investment 完全揹包
完全揹包 這題很裸的完全揹包。不過居然還各種re和wa。首先是re 因為每次都會有利息,加上原來的本金之後的資金肯定是會大於原來的最大值。陣列開大個5倍就夠了。因為題意是利息不超過10 年數不超過40.這個隨便算下,或者開個足夠大就行。其次wa的原因 因為我在實現的時候,用了個變數extra去存不足...
POJ 2063 Investment(完全揹包)
poj 2063 investment 題意 有m元本金,想要在銀行存year年,有n種可供選擇的存款方式,每種存款方式都有相應的本金val i 和年獲利interst i 每年的獲利又可以作為下一年的本金繼續儲存。資料範圍 m 1e6,year 40,n 10,val i 是1000的倍數,年獲利...
POJ 2063 Investment 完全揹包
1.完全揹包問題 有n種物品,每種無限個,第i個物品的體積與價值分為v i 與w i 問體積為v的揹包能裝的最大總價值為多少。for int i 1 i n i for int j v i j v j d j max d j d j v i w i 發現完全揹包的迴圈和使用滾動陣列的0 1揹包只在i...