下面代码是一维数组优化 0/1 背包的核心片段,其中 w[i] 表示第 i 件物品的重量, v[i] 表示第 i 件 物品的价值。横线处应填入( )。 for (int i = 1; i = w[i]; c--) { __________; } }
A:dp[c] = max(dp[c], dp[c + w[i]] + v[i])
B:dp[c] = min(dp[c], dp[c - w[i]] + v[i])
C:dp[c] = dp[c - w[i]] + v[i]
D:dp[c] = max(dp[c], dp[c - w[i]] + v[i])
正确答案:D
试卷来源:202606 CCF-GESP编程能力等级认证C++七级真题