背包问题笔记02
2016-09-08 本文已影响0人
好吃的的的的大熊
完全背包(非递归)
int MaxValue(int *value , int *volumn)
{
int *M = new int[Max + 1];
for (int i = 0;i < Max + 2; i++)
M[i] = 0;
for (int i = 0; i < cargoNum; i++)
{
for (int curVolumn = Max; curVolumn >= Cargo[i]; curVolumn--)
{
for (int k = 0; k * Cargo[i] < curVolumn; k++)
{
M[curVolumn] = M[curVolumn] > k * Cargo[i] + M[curVolumn - k * Cargo[i]] ? M[curVolumn]: k* Cargo[i] + M[curVolumn - k*Cargo[i]];
cout << M[Max] << endl;
}
}
}