for (i = n - 1; i >= 0;i--)
//for (i = 0; i < n;i++)
{
for (j = 0; j <= w; j++)
{
//show();
if (j < wi[i])
{
dp[i][j] = dp[i + 1][j];
}
else
{
dp[i][j] = max(dp[i + 1][j], dp[i + 1][j - wi[i]] + pi[i]);
}
}
}
cout << dp[0][w] << endl;
//cout << dp[n - 1][w] << endl;
这是简单的背包问题的动态规划,可是我还是不会