一、单选题
第 1 题 单选题
栈的进出规则?( )
A.先进先出
B.先进后出
C.随机进出
D.后进后出
第 2 题 单选题
01背包问题中,一维DP数组的内层循环需要逆序遍历,其原因?( )
A.降低时间复杂度
B.避免同一件物品被多次选择
C.减少空间使用
D.提高代码可读性
第 3 题 单选题 欧几里得算法(辗转相除法)用于求解?( )
A.两个数的最小公倍数
B.两个数的最大公约数
C.素数判定
D.快速幂运算
第 4 题 单选题
二叉树的遍历中,顺序为“左子树→根节点→右子树”的?( )
A.前序遍历
B.中序遍历
C.后序遍历
D.层序遍历
第 5 题 单选题
广度优先搜索(BFS)通常使用哪种数据结构实现?( )
A.栈
B.队列
C.链表
D.数组
二、判断题
第 6 题 判断题
哈希表的核心是通过哈希函数将关键字映射到数组下标,实现快速查找。( )
A.正确 B.错误
第 7 题 判断题
DFS 中的剪枝操作,目的是减少不必要的搜索分支,提高搜索效率。( )
A.正确 B.错误
第 8 题 判断题
从 5 个不同的元素中选 3 个进行排列,排列数为60。( )
A.正确 B.错误
第 9 题 判断题 哈夫曼编码的构建过程使用了贪心算法的思想。( )
A.正确 B.错误
第 10 题 判断题
有向图的邻接矩阵中,第 i 行第 j 列的元素表示从节点 j 到节点 i 的边。( )
A.正确 B.错误
三、编程题
第 11 题 问答题 能量槽
题目描述
在实验室中,有一个“能量槽”和 n 个待处理的能量块。第i个能量块的能级为ai,其蕴含的能量为2ai。
实验需按顺序执行n次操作,第i次操作流程如下:
(1)将第i个能量块放入堆槽的顶部。
(2)随后启动“自动融合程序”,重复执行以下检查,直到无法继续:
若槽中能量块数量≤1,停止融合。
若顶部第 1 个与第 2 个能量块的能级不同,停止融合。
若顶部两个能量块能级相同,则将它们从槽中移除,并向顶部放入一个能级为原能级 + 1的新能量块,其能量为两者之和。
再次回到检查步骤,继续尝试融合。
求 n 次操作全部完成后,槽中剩余的能量块总数。
输入格式
第一行,一个整数n。
接下来 n 行,每行一个整数 ai。
输出格式
输出 n 次操作结束后槽中剩余能量块的数量。
输入样例#1
7 2 1 1 3 5 3 3 Copy 输出样例#1
3
输入样例#2
5 0 0 0 1 2
输出样例#2
4
说明提示:
1≤n≤2×10^5,0≤ai≤10^9,输入均为整数。
限制:
时间限制:1000ms,内存限制:256MiB
第 12 题 问答题
星际探险
题目描述
星际探险队计划从 n 名候选者中挑选队员组成小队,每名候选者只能入选一次。
飞船上有 m 个关键系统,第 i 名候选者的加入会对第 j 个系统的状态值产生 (ai, j) 的影响,影响可正可负。
探险安全条例要求,最终小队组成后,每个系统的状态值总和都必须不低于 0,否则飞船无法维持安全航行。
在满足该要求的前提下,希望小队的人数尽可能多,请输出这个最大人数。若不存在任何满足条件的选人方案,输出0。
输入格式
第一行:两个整数表示 n 与 m;
第二行到第 n+1 行:第 i+1 行有 m 个整数,表示 (ai,1)、(ai,2)、……、(ai,m)。
输出格式
单个整数:表示答案。
输入样例
4 3 1 1 -2 1 -2 1 -2 1 1 2 2 2
输出样例
4
说明提示:
1≤n、m≤16,1,000,000≤ (ai, j) ≤1,000,000。
限制:
时间限制:1000ms,内存限制:256MiB
第 13 题 问答题
博弈游戏
题目描述
两位玩家进行回合制博弈游戏,游戏总计进行 n 轮。每一轮,双方都要从1、2、3三个数字中选择一个出招,胜负规则如下:
(1)若双方选择的数字相同,本轮为平局;
(2)若数字不同,胜负遵循固定克制关系:1克制2,2克制3,3克制1,被克制的一方本轮落败,克制的一方本轮获胜。
其中一位玩家提前掌握了对手的完整出招顺序——对手在第 i 轮选择的数字为 si,所有 si 组成一个长度为 n 的序列。
该玩家需要规划自己每一轮的出招,满足以下全部条件:
(1)任何一轮都不能落败(即每一轮只能获胜或平局);
(2)不能连续两轮选择相同的数字出招;
(3)在满足前两个条件的前提下,尽可能多地获得轮次的胜利。
请计算该玩家最多能赢得的轮次数量。
输入格式
第一行:一个整数表示n。
第二行:n 个整数,表示s1、s2、……、sn,每个数为1、2或3。
输出格式
输出一个整数,表示玩家最多能赢得的游戏轮数。
输入样例#1
6
3 1 2 2 1 2
输出样例#1
5
输入样例#2
24
2 3 1 3 2 1 1 1 1 1 3 3 1 3 1 3 2 2 1 2 3 1 2 2
输出样例#2
18
说明提示:
1≤n≤200,000,si∈{1,2,3}
限制:
时间限制:1000ms,内存限制:256MiB
第 14 题 问答题 作品选拔
题目描述
创新大赛组委会收到了 n 件学生参赛作品,每件作品都有对应的综合评审得分,其中第 i 件作品的得分为 ai。
根据赛事章程,组委会需从所有备选作品中选出 m 件作品晋级市级终评。为保障终评作品的整体质量,要求选出的 m 件作品中,至少有 k 件作品的综合得分不低于赛事划定的基准线 x。
请你帮助组委会计算,一共有多少种符合要求的作品遴选方案?由于答案数值可能过大,请输出方案数对998244353取模后的结果。
输入格式
第一行,两个正整数n、m;
第二行,n 个正整数,分别表示 a1、a2、……、an;
第三行,两个正整数 k、x。
输出格式
输出满足条件的方案数对 998244353 取模后的结果。
输入样例#1
3 2
10 20 30
1 20
输出样例#1
3
输入样例#2
4 2
5 10 15 20
1 12
输出样例#2
5
说明提示:
对于50%的数据,1≤n≤20;
对于100%的数据,1≤n≤1000,1≤k≤m≤n,1≤ai、x≤10^9。