題目分析:給出了錢罐開始的重量e和裝滿後的重量f,然後給你n種硬幣,每個價值為p,重量為w,求出最小的價值使錢罐的重量恰好為w
如果不存在 輸出this is impossible.
#include
#include
int main()
for(i = 1; i <= m; i++)
f[0]=0;
for(i=1; i<=n; i++)
printf("\n\n\n"); }
if(f[m]==2100000000)
printf("this is impossible.\n");
else
printf("the minimum amount of money in the piggy-bank is %d.\n",f[m]); }
return 0; }
//杭電 1114 piggy-bank
// 因為初始化為正無窮 f[0]=0;f[j]=正無窮肯定大於f[j-w[i]]+v[i]所以第乙個肯定能
//裝到最大 如果不能恰好裝滿的話 f[m]就為正無窮
//第二個如果裝進去比不裝小的話就裝進去
//不能被裝滿的1種情況w為2,揹包為奇數的就不能裝滿比如揹包容量為1
杭電1114 完全揹包
題目大意 有乙個存錢罐,給出它的重量和裝滿硬幣的重量,然後給出裡面裝的硬幣的種類數,並給出每種硬幣的面值和重量,求在給定重量的條件下硬幣的最小價值。解題思路 完全揹包。根據 揹包九講 這道題目相當於要求必須裝滿給出的重量,因此要使dp 0 0,同時因為求的是最小值,因此其他位置應該是正無窮。1 in...
杭電 1114 Piggy Bank(完全揹包)
狀態轉移方程 dp i j max dp i 1 j dp i 1 j c i w i include include include includeusing namespace std int value 510 int weight 510 int dp 100100 int main if ...
動態規劃之完全揹包問題杭電1114
題目大意 有乙個存錢罐,給出它的重量和裝滿硬幣的重量,然後給出裡面裝的硬幣的種類數,並給出每種硬幣的面值和重量,求在給定重量的條件下硬幣的最小價值。解題思路 完全揹包。根據 揹包九講 這道題目相當於要求必須裝滿給出的重量,因此要使dp 0 0,同時因為求的是最小值,因此其他位置應該是正無窮。incl...