测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A67606. 以下代码实现了0/1背包问题的动态规划解法。假设物品重量为weights[],价值为values[],背包容量为W,横线上应填写( )。1 int knapsack(int W, vector<int>& weights, vector<int>& values) {

单选题

题目描述

以下代码实现了0/1背包问题的动态规划解法。假设物品重量为weights[],价值为values[],背包容量为W,横线上应填写( )。

1 int knapsack(int W, vector<int>& weights, vector<int>& values) { 
2  int n = weights.size(); 
3  vector<vector<int>> dp(n + 1, vector<int>(W + 1, 0)); 
4
5  for (int i = 1; i <= n; i++) { 
6   for (int j = 1; j <= W; j++) { 
7    if (weights[i-1] > j) { 
8     dp[i][j] = dp[i-1][j]; // 当前物品装不下 
9    } else { 
10     dp[i][j] = max(_________________________); // 在此处填入代码 
11    } 
12   } 
13  }
14  return dp[n][W]; 
15 }


选项(单选)