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

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

单选题 困难

题目描述

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

int knapsack(int W, vector<int>& weights, vector<int>& values) {
	int n = weights.size();
	vector<vector<int>> dp(n + 1, vector<int>(W + 1, 0));
	
	for (int i = 1; i <= n; i++) {
		for (int j = 1; j <= W; j++) {
			if (weights[i-1] > j) {
				dp[i][j] = dp[i-1][j]; // 当前物品装不下
			} else {
				dp[i][j] = max(_________________________); // 在此处填入代码
			}
		}
	}
	return dp[n][W];
}

选项(单选)

上一题 下一题