分类题库
C++编程题库
按题型、年份与知识点筛选,快速定位练习题。
题目列表
共 35 题
A67644
小杨正在爬楼梯,需要爬n阶才能到达楼顶。如果每次可以爬1个或2个台阶,下面代码采用递推算法来计算一共有多少种不同的方法可以爬到楼顶,则横线上应填写( )。1 int f(int n) {
2025年
单选
A67606
以下代码实现了0/1背包问题的动态规划解法。假设物品重量为weights[],价值为values[],背包容量为W,横线上应填写( )。1 int knapsack(int W, vector<int>& weights, vector<int>& values) {
2025年
单选
A67602
在动态规划解决一维硬币找零问题时,若硬币面额为 [1,3,4],目标金额为6,则最少需要2枚硬币(3+3)。
2025年
判断
A67598
3.2 编程题 2
2025年
编程题
A67594
给定一个整数数组nums,找到其中最长的严格上升子序列的长度。 子序列是指从原数组中删除一些元素(或不删除)后,剩余元素保持原有顺序的序列。 下面的程序横线处应该填入的是()1 #include <iostream>
2025年
单选
A67593
给定一个整数数组nums,找到其中最长的严格上升子序列的长度。 子序列是指从原数组中删除一些元素(或不删除)后,剩余元素保持原有顺序的序列。 该程序的时间复杂度为()1 #include <iostream>
2025年
单选
A67591
给定一个m×n的二维网格grid,每个格子中有一个非负整数。请找出一条从左上角 (0, 0) 到右下角 (m-1, n-1) 的路径,使得路径上的数字总和最小。每次只能向右或向下移动。横线处应该填入的是()1 #include <iostream>
2025年
单选
A67590
给定一个整数数组nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。下面横线处应该填入的是()1 #include <iostream>
2025年
单选
A67586
3.1 编程题 1
2025年
编程题
A67579
下面Floyd算法中,横线处应该填入的是( )。1 #include <iostream>
2025年
单选
A67448
给定 n 个物品和一个最大承重为w 的背包,每个物品有一个重量 wt[i]和价值val[i] ,每个物品只能选择放或 不放。目标是选择若干个物品放入背包,使得总价值最大,且总重量不超过 w。关于下面c++代码,说法正确的是( )。int knapsack1D(int W, vector<int>& wt, vector<int>& val, int n) {
2025年
单选
A67438
下面C++代码采用动态规划求解零钱兑换问题:给定 种硬币,第 𝑖 种硬币的面值为 𝑐𝑜𝑖𝑛𝑠[𝑖 − 1] ,目标金额为 𝑎𝑚𝑡 ,每种硬币可以重复选取,求能够凑出目标金额的最少硬币数量;如果不能凑出目标金额,返回 -1 。int coinChangeDPComp(vector<int> &coins, int amt) {
2025年
判断
A67437
学习小组
2025年
编程题
A67433
以以下关于动态规划的说法中,错误的是( )。
2025年
单选
A67425
调味平衡
2025年
编程题
A67418
下面 LIS 函数试图求出最长上升子序列的长度,横线处应该填入的是( )。int max(int a, int b) {
2025年
单选
A67417
下面 LIS 函数试图求出最长上升子序列的长度,其时间复杂度为( )。#define INT_MIN (-1000)
2025年
单选
A67325
小杨正在爬楼梯,需要 n阶才能到达楼顶,每次可以爬 1阶或 2阶,求小杨有多少种不同的方法可以爬到 楼顶,横线上应填写( )。int climbStairs(int n) {
2025年
单选
A67272
给定 n个物品和一个最大承重为 W的背包,每个物品有一个重量 wt[i]和 val[i]价值 ,每个物品只能选择放或 不放。目标是选择若干个物品放入背包,使得总价值最大,且总重量不超过 W,则横线上应填写( )。int knapsack(int W, vector<int>& wt, vector<int>& val, int n) {
2025年
单选
A67263
下面C++代码实现了动态规划版本的斐波那契数列计算,其时间复杂度是 O(2n)。int fib_dp(int n) {
2025年
判断