CSP-S 2026 第一轮试卷
单项选择
第 1 题
2 分执行下列代码后,cnt 的值是( )。
第 2 题
2 分用权值 {1, 2, 3, 4, 5, 6, 7, 8} 构造哈夫曼树,其带权路径长度是( )。
第 3 题
2 分把 1 到 1000 的所有整数按十进制写出,数字“1”总共出现了多少次( )。
第 4 题
2 分将 5 封信随机装入 5 个写好地址的信封(每封一个),恰好有 2 封装对的方案数是( )。
第 5 题
2 分 的值是( )。
第 6 题
2 分有 5 堆石子排成一行,重量依次为 4、1、3、2、5。每次只能把相邻的两堆合并成一堆,代价为这两堆重量之和。将所有石子合并成一堆的最小总代价是( )。
第 7 题
2 分树状数组维护长度 的序列,查询前缀和 sum(11) 与单点修改 add(3, x) 分别需要访问树状数组中多少个下标( )。
第 8 题
2 分有向无环图 顶点集为 ,边集为 ,顶点 4 与任何顶点均不相邻。该图不同的拓扑序共有多少种( )。
第 9 题
2 分某分治算法满足 ,,则 是( )。
第 10 题
2 分无根树含 9 个结点(编号为 1—9),边集为 。该树的直径(以边数计)与重心分别是( )。
第 11 题
2 分一张有向图缩点后得到的有向无环图含 6 个顶点,其中入度为 0 的顶点有 3 个,出度为 0 的顶点有 4 个。为使原图变成强连通图,至少需要添加多少条有向边( )。
第 12 题
2 分含 6 个结点的不同形态的二叉树共有多少棵(结点不带标号,区分左右子树)( )。
第 13 题
2 分字符串 S = "ababaabab",其所有既是真前缀又是真后缀的子串(非空)的长度之和是( )。
第 14 题
2 分用归并排序统计逆序对,合并部分的核心代码为:
第 15 题
2 分执行 power(2, 100, 1000) 调用下列函数,返回值是( )。
阅读程序
第 16–21 题6 个小题
第 16 题
1 分(1 分)当输入为 32 个 '0' 时,程序输出 12 个 0。( )
第 17 题
1.5 分程序运行结束后,数组 a 中下标从 0 到 31 的元素一定全部为 0。( )
第 18 题
1.5 分若将第 12—14 行(为 a[32] 到 a[43] 补 0 的循环)删除,会改变程序输出的结果。( )
第 19 题
3 分关于第 6 行定义的数组 gen,下列说法正确的是( )。
第 20 题
3 分该程序实现的功能,最准确的说法是( )。
第 21 题
3 分若把第 16 行 if (a[i] == 0) continue; 删除,说法正确的是( )。
第 22–27 题6 个小题
第 22 题
1.5 分当 ,,且仅有一次查询 时,输出为 1。( )
第 23 题
1.5 分当某次查询的区间长度为 1(即 )时,该次查询的输出一定等于 a[L]。( )
第 24 题
1.5 分任意一次查询的输出结果一定不小于该查询区间内的最小值。( )
第 25 题
3 分对于 ,数组 dp[i][j] 保存的是( )。
第 26 题
3 分若把一次求最大公约数的运算视为 ,则第 17—22 行建表过程的时间复杂度为( )。
第 27 题
3 分设 为一次查询的区间长度(即 ),则使得 lg[x] = 5 的 的取值范围是( )。
第 28–33 题6 个小题
完善程序
第 34–38 题5 个小题
第 39–43 题5 个小题