GESP 2023年12月_C++六级试卷
从PDF导入:GESP 2023年12月_C++六级试卷
C++
180分钟
总分 100.0
27 题
试卷题目预览
第1题
中级
2.0分
单选
关于C++类和对象的说法,错误的是( )。
第2题
中级
2.0分
单选
有关下面C++代码的说法,错误的是( )。(代码中Point是内部类,Rectangle是外部类)
第3题
中级
2.0分
单选
有关下面C++代码的说法,正确的是( )。(涉及静态成员变量objCounter的使用)
第4题
中级
2.0分
单选
有关下面C++代码的说法,错误的是( )。(涉及二叉树类的定义)
第5题
中级
2.0分
单选
基于第4题的定义,有关下面C++代码的说法正确的是( )。(Order函数)
第6题
中级
2.0分
单选
有关下面C++代码的说法正确的是( )。(链表节点定义)
第7题
中级
2.0分
单选
对"hello world"使用霍夫曼编码(Huffman Coding),最少bit(比特)为( )。
第8题
中级
2.0分
单选
下面的fiboA()和fiboB()两个函数分别实现斐波那契数列,该数列第1、第2项值为1,其余各项分别为前两项之和。下面有关说法错误的是( )。
第9题
中级
2.0分
单选
有关下面C++代码不正确的说法是( )。(Depth函数计算二叉树深度)
第10题
中级
2.0分
单选
下面有关树的存储,错误的是( )。
第11题
中级
2.0分
单选
构造二叉树[1,2,3,null,4]( )。
第12题
中级
2.0分
单选
下面有关布尔类型的函数的说法,正确的是( )。
第13题
中级
2.0分
单选
通讯卫星在通信网络系统中主要起到( )的作用。
第14题
中级
2.0分
单选
小杨想编写一个判断任意输入的整数N是否为素数的程序,下面哪个方法不合适?( )
第15题
中级
2.0分
单选
内排序有不同的类别,下面哪种排序算法和冒泡排序是同一类?( )
第16题
中级
2.0分
判断
在面向对象中,方法在C++的class中表现为class内定义的函数。
第17题
中级
2.0分
判断
C++类的定义中,可以没有构造函数,会给出默认的构造函数。
第18题
中级
2.0分
判断
如果某个C++对象(object)支持下标运算符(方括号运算符),则该对象在所对应class中以成员函数的形式进行了重载。
第19题
中级
2.0分
判断
深度优先搜索(DFS,Depth First Search的简写)属于图算法,其过程是对每一个可能的分支路径深入到不能再深入为止,而且每个节点只能访问一次。
第20题
中级
2.0分
判断
哈夫曼编码(Huffman Coding)具有唯一性,因此有确定的压缩率。
第21题
中级
2.0分
判断
在下面C++代码中,由于删除了变量ptr,因此ptr所对应的数据也随之删除,故第8行代码被执行时,将报错。
第22题
中级
2.0分
判断
二叉搜索树查找的平均时间复杂度为O(log n)。
第23题
中级
2.0分
判断
二叉搜索树可以是空树(没有任何节点)或者单节点树(只有一个节点),或者多节点。如果是多节点,则左节点的值小于父节点的值,右节点的值大于父节点的值,由此推理,右节
第24题
中级
2.0分
判断
小杨想写一个程序来算出正整数N有多少个因数,经过思考他写出了一个重复没有超过N/2次的循环就能够算出来了。
第25题
中级
2.0分
判断
同样的整数序列分别保存在单链表和双向链中,这两种链表上的简单冒泡排序的复杂度相同。
第26题
中级
25.0分
编程
闯关游戏
你来到了一个闯关游戏。这个游戏总共有n关,每关都有m个通道,你需要选择一个通道并通往后续关卡。其中,第i个通道可以让你前进a_i关,也就是说,如果你现在在第k关,那么选择第i个通道后,你将直接来到第k+a_i关(特别地,如果k+a_i≥n,那么你就通关了)。此外,当你顺利离开第k关时,你还将获得b_k分。游戏开始时,你在第0关。请问,你通关时最多能获得多少总分?
【输入格式】
第一行两个整数n,m,分别表示关卡数量和每关的通道数量。
接下来一行m个用单个空格隔开的整数a_1~a_m。保证a_i≥1。
接下来一行n个用单个空格隔开的整数b_0~b_{n-1}。保证|b_i|≤1000。【输出格式】
一行一个整数,表示你通关时最多能够获得的分数。
【样例输入1】 6 2 2 3 1 0 30 100 30 30 【样例输出1】 131 【样例解释1】 你可以在第0关选择第1个通道,获得1分并来到第2关;随后再选择第2个通道,获得30分并来到第5关;最后任选一个通道,都可以获得30分并通关。如此,总得分为1+30+30=131。 【样例输入2】 6 2 2 3 1 0 30 100 30 -1 【样例输出2】 101 【样例解释2】 请注意,一些关卡的得分可能是负数。 对于所有测试点,保证2≤n≤10000,1≤m≤100,1≤a_i≤n,|b_i|≤1000。
第27题
中级
25.0分
编程
工作沟通
某公司有n名员工,编号从0至n-1。其中,除了0号员工是老板,其余每名员工都有一个直接领导。我们假设编号为i的员工的直接领导是fa_i。该公司有严格的管理制度,每位员工只能受到本人或本人直接领导或间接领导的管理。具体来说,规定员工x可以管理员工y,当且仅当x=y,或fa_x=y,或x可以管理fa_y。特别地,0号员工老板只能自我管理,无法由其他任何员工管理。现在,有一些同事要开展合作,他们希望找到一位同事来主持这场合作,这位同事必须能够管理参与合作的所有同事。如果有多名满足这一条件的员工,他们希望找到编号最大的员工。你能帮帮他们吗?
【输入格式】
第一行一个整数n,表示员工的数量。
第二行n-1个用空格隔开的正整数,依次为fa_1~fa_{n-1}。
第三行一个整数q,表示共有q场合作需要安排。
接下来q行,每行描述一场合作:开头是一个整数k(1≤k≤n),表示参与本次合作的员工数量;接着是k个整数,依次表示参与本次合作的员工编号(保证编号合法且不重复)。【输出格式】
输出q行,每行一个整数,依次为每场合作的主持人选。
【样例输入1】 <img src="/static/uploads/images/ad78ed00cb.png" style="max-width:35%;border-radius:6px;margin:8px 0;" /> 【样例输出1】 2 2 0 【样例解释1】 对于第一场合作,员工3,4有共同领导2,可以主持合作。 对于第二场合作,员工2本人即可以管理所有参与者。 对于第三场合作,只有0号老板才能管理所有员工。 对于所有测试点,保证1≤n≤300,1≤q≤300,1≤k≤n。