01背包
for(int i=1;i<=n;i++)
{
for(int j=0;j<=m;j++)
{
f[i][j]=f[i-1][j];
if(j>=need[i])
f[i][j]=max(f[i][j],f[i-1][j-need[i]]+value[i]);
}
}
for(int i=1;i<=n;i++)
{
for(int j=m;j>=need[i];j--)
{
f[j]=max(f[j],f[j-need[i]]+value[i]);
}
}
完全背包
for(int i=1;i<=n;i++)
{
for(int j=0;j<=m;j++)
{
if(j>=need[i])
f[j]=max(f[j],f[j-need[i]]+vaule[i]);
}
}
万变不离其中
等学了再补充