原版
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
if(j<w[i])
d[i][j]=dp[i-1][j];
else
dp[i][j]=max(dp[i-1][j],dp[i-1][j-w[i]]+v[i]);
优化版
for(int i=1;i<=n;i++)
for(int j=t;j>=w[i];j--)
dp[j]=max(dp[j],dp[j-w[i]]+v[i]);
原版
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
if(j<w[i])
d[i][j]=dp[i-1][j];
else
dp[i][j]=max(dp[i-1][j],dp[i-1][j-w[i]]+v[i]);
优化版
for(int i=1;i<=n;i++)
for(int j=t;j>=w[i];j--)
dp[j]=max(dp[j],dp[j-w[i]]+v[i]);