GESP C++ 真题 · 逐题精解
首页 › C++七级真题 › 2026年9月 › 第12题

GESP 2026年9月 C++七级 单选题 第12题

C++七级单选题2026年9月第12题

所属知识点:动态规划(背包·LCS·LIS) 难度要求:— 考频:—

下列代码是一维数组优化 0/1 背包的核心片段,执行后 dp[8] 的输出结果是(  )。
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
    int w = 3, v = 5, W = 8;
    int dp[9] = {0};
    for (int c = W; c >= w; c--)
        dp[c] = max(dp[c], dp[c - w] + v);
    cout << dp[8] << endl;
    return 0;
}

正确答案:D

题目解析
仅有一件物品,重量 w=3,价值 v=5。dp[8] = max(dp[8], dp[5] + 5),此时 dp[5] 仍为 0,故 dp[8] = 5。

想系统刷完 GESP C++ 1~8 级真题,并查看每道题的逐题精讲?

进入 GESPPASS 开始练习