CCF编程能力等级认证GESP—C++7级—20240907

CCF编程能力等级认证GESP—C++1级真题

  • 单选题(每题 2 分,共 30 分)
  • 判断题(每题 2 分,共 20 分)
  • 编程题 (每题 25 分,共 50 分)
    • 小杨寻宝
    • 矩阵移动

单选题(每题 2 分,共 30 分)

1、已知小写字母 b 的ASCII码为98,下列C++代码的输出结果是( )。

#include <iostream>
using namespace std;
int main() {
	char a = 'b';
	a++;
	cout << a;
	return 0;
}
A. b 
B. c 
C. 98 
D. 99

正确答案:B

2、已知 a 为 int 类型变量,下列表达式不符合语法的是( )。

A. &a + 3
B. +a & 3 
C. a - - 4 
D. a++3

正确答案:D

3、下列关于C++语言中指针的叙述,不正确的是( )。

A. 指针变量中存储的是内存地址。
B. 指针变量指向的内存地址不一定能够合法访问。
C. 结构类型中的指针成员不能指向该结构类型。
D. 定义指针变量时必须指定其指向的类型。

正确答案:C

4、下列关于C++类的说法,错误的是( )。

A. 将C++类对象通过值传递给函数参数时,会自动调用复制构造函数。 
B. 将一个类的对象赋值给该类的另一个对象时,不会自动调用构造函数。 C. 定义C++类对象时,一定会调用默认构造函数。
D. 构造派生类的对象时,一定会调用基类的构造函数。

正确答案:C

5、某二叉树T的先序遍历序列为:{A B D C E G H F},中序遍历序列为:{D B A H G E C F},则下列说法中正 确的是( )。

A. T的高为5
B. T有4个叶节点 
C. T是平衡树
D. 以上说法都不对

正确答案:A

6、一棵完全二叉树有431个结点,则叶结点有多少个?( )

A. 176
B. 215 
C. 216 
D. 255

正确答案:C

7、下列关于树的说法,错误的是( )。

A. 二叉树的中序遍历与其深度优先遍历总是相同的。
B. 所有树都可以构造一颗二叉树与之一一对应。
C. 如果树的一个叶结点有两个不同的祖先结点,那么其中一个一定是另一个的祖先结点。 
D. 树的结点不能有两个父结点。

正确答案:A

8、一个简单无向图有10个结点、30条边。再增加多少条边可以成为完全图。( )

A. 10
B. 15 
C. 51 
D. 60

正确答案:B

9、以下哪个方案可以合理解决或缓解哈希表冲突( )。

A. 丢弃发生冲突的新元素。
B. 用新元素覆盖发生冲突的元素。
C. 用新元素覆盖在冲突位置的下一个位置。
D. 将新元素放置在冲突位置之后的第一个空位。

正确答案:D

10、一个迷宫,已知从起点不经过重复结点到达终点的路径有且仅有一条,则下面说法错误的是( )。

A. 可以使用深度优先搜索找到这条路径。
B. 可以使用广度优先搜索找到这条路径。
C. 该迷宫内与起点连通的结点,一定也与终点连通。
D. 该迷宫内与起点连通的结点及它们之间的路径可以抽象为无向无环图。

正确答案:D

11、下面程序的输出为( )。

#include <iostream>
#include <cmath>
using namespace std;
int main() {
	cout << (int)log(8) << endl;
	return 0;
}
A. 2
B. 3
C. 8
D. 无法通过编译。

正确答案:A

12、下面程序的输出为( )。

#include <iostream>
#define N 10
using namespace std;
int path[N][N];
int main() {
    for (int i = 1; i < N; i++)
        path[i][0] = i;
    for (int j = 1; j < N; j++)
        path[0][j] = j;
    for (int i = 1; i < N; i++)
        for (int j = 1; j < N; j++)
            path[i][j] = path[i - 1][j] + path[i][j - 1];
    cout << path[8][4] << endl;
return 0; }
A. 84
B. 495
C. 1012
D. 结果是随机的。

正确答案:C

13、上题中程序的时间复杂度为( )。

A. O ( 1 ) O(1) O(1)
B. O ( N ) O(N) O(N)
C. O ( N l o g N ) O(NlogN) O(NlogN)
D. O ( N 2 ) O(N^2) O(N2)

正确答案:D

14、下面 fib 函数的时间复杂度为( )。

int fib_rcd[MAX_N];
int fib(int n){
	if(n<=1) 
		return 1;
	if (fib_rcd[n] > 0)
	    return fib_rcd[n];
	return fib(n - 1) + fib(n - 2);
}

A. O ( n ) O(n) O(n)
B. O ( ϕ n ) , ϕ = 5 − 1 2 O(\phi^n), \phi = \frac{\sqrt{5} - 1}{2} O(ϕn),ϕ=25 1
C. O ( 2 n ) O(2^n) O(2n)
D. 无法正常结束

正确答案:B

15、下列选项中,哪个可能是下图的广度优先遍历序列( )。

在这里插入图片描述

A. 1, 3, 5, 7, 4, 2, 6, 8, 9 
B. 9, 4, 2, 1, 3, 7, 5, 6, 8 
C. 1, 3, 5, 7, 6, 8, 9, 4, 2 
D. 9, 4, 7, 2, 1, 3, 5, 6, 8

正确答案:A

判断题(每题 2 分,共 20 分)

1、表达式’a’ << 1的结果为’a '。

正确答案:错误

2、在C++语言中,函数可以定义在另一个函数定义之内。

正确答案:错误

3、选择排序一般是不稳定的。

正确答案:正确

4、埃氏筛法和欧拉筛法都是使用筛法思想生成素数表的算法,欧拉筛法的时间复杂度更低。

正确答案:正确

5、使用 math.h 或 cmath 头文件中的正弦函数,表达式 sin(30) 的结果类型为 double 、值约为 0.5 。

正确答案:错误

6、一颗N层的完全二叉树,一定有 2 N 2^N 2N个结点。

正确答案:错误

7、一个图,不管是否连通,都可以使用深度优先搜索算法进行遍历。

正确答案:正确

8、某个哈希表键值 x 为整数, H(x) = x % p 是常用的哈希函数之一,要求 p 选择素数是因为这样不会产生 冲突。( )

正确答案:错误

9、使用单链表实现队列时,链表头结点作为队首比链表头结点作为队尾更便于操作。

正确答案:正确

10、一个图中,每个结点表达一个人,连接两个结点的边表达两个结点对应的人相互认识,则这个图可以用来
表达社交网络。

正确答案:正确

编程题 (每题 25 分,共 50 分)

小杨寻宝

【问题描述】
小杨有一棵包含n个节点的树,树上的一些节点放置有宝物。
小杨可以任意选择一个节点作为起点并在树上移动,但是小杨只能经过每条边至多一次,当小杨经过一条边后,这条边就会消失。小杨每经过一个放置有宝物的节点就会取得该宝物。
小杨想请你帮他判断自己能否成功取得所有宝物。
【输入描述】
第一行包含一个正整数t,代表测试用例组数。
接下来是t组测试用例。对于每组测试用例,一共n + 1行
第一行包含一个正整数n,代表树的节点数。
第二行包含n个非负整数 a 1 , a 2 , . . . , a n a_1, a_2, ..., a_n a1,a2,...,an,其中如果 a i = 1 a_i = 1 ai=1,则节点i放置有宝物,若 a i = 0 a_i = 0 ai=0,则节点i没有宝物
之后n - 1行,每行包含两个正整数 x i , y i x_i, y_i xi,yi,代表存在一条连接节点 x i x_i xi y i y_i yi的边。
【输出描述】
对于每组测试数据,如果小杨能成功取得所有宝物,输出 Yes,否则输出 No。
【样例输入 1】
2
5
0 1 0 1 0
1 2
1 3
3 4
3 5
5
1 1 1 1 1
1 2
1 3
3 4
3 5
【样例输出 1】
Yes
No

对于第一组测试用例,小杨从节点2出发,按照2 - 1 - 3 - 4的顺序即可成功取得所有宝物。

子任务编号数据点占比tn
120% < = 10 <= 10 <=10 < = 5 <= 5 <=5
220% < = 10 <= 10 <=10 < = 1000 <= 1000 <=1000
360% < = 10 <= 10 <=10 < = 1 0 5 <= 10^5 <=105

对于全部数据,保证有 1 < = t < = 10 , 1 < = n < = 1 0 5 , 0 < = a i < = 1 1 <= t <= 10, 1 <= n <= 10^5, 0 <= a_i <= 1 1<=t<=10,1<=n<=105,0<=ai<=1,且保证树上一定有至少一个节点放置有宝物。

矩阵移动

【问题描述】
小杨有一个有一个 n ∗ m n * m nm的矩阵,仅包含 01? 三种字符。矩阵的行从上到下编号依次为1,2,…,n,列从左到右编号依次为1,2,…,m编号。小杨开始在矩阵的左上角(1,1),小杨只能向下或者向右移动,最终到达右下角(n,m) 时停止,在移动的过程中每经过一个字符 1 得分会增加一分(包括起点和终点),经过其它字符则分数不变。小杨 的初始分数为0分。
小杨可以将矩阵中不超过x个字符 ? 变为字符 1。小杨在修改矩阵后,会以最优的策略从左上角移动到右下角。他想 知道自己最多能获得多少分。
【输入描述】
第一行包含一个正整数t,代表测试用例组数。
接下来是t组测试用例。对于每组测试用例,一共n + 1行。
第一行包含三个正整数n,m,x,含义如题面所示。
之后n行,每行包含一个长度为m且仅包含 01? 三种字符的字符串。
【输出描述】
对于每组测试用例,输出一行一个整数,代表最优策略下小杨的得分最多是多少。
【样例输入 1】
2
3 3 1
000
111
01?
3 3 1
000
?0?
01?
【样例输出 1】
4
2

对于第二组测试用例,将(1,1)或者(3,3)变成1均是最优策略。

子任务编号数据点占比tn,mx
130% < = 5 <= 5 <=5 < = 10 <= 10 <=10=1
230% < = 10 <= 10 <=10 < = 500 <= 500 <=500 < = 30 <= 30 <=30
340% < = 10 <= 10 <=10 < = 500 <= 500 <=500 < = 300 <= 300 <=300

对于全部数据,保证有 1 < = t < = 10 , 1 < = n , m < = 500 , 1 < = x < = 300 1 <= t <= 10, 1 <= n,m <= 500, 1 <= x <= 300 1<=t<=10,1<=n,m<=500,1<=x<=300,同时保证所有测试用例n * m的总和不超过 2.5 ∗ 1 0 5 2.5 * 10^5 2.5105

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/874080.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

网络安全工程师(白帽子)企业级学习路线

第一阶段&#xff1a;安全基础&#xff08;入门&#xff09; 第二阶段&#xff1a;Web渗透&#xff08;初级网安工程师&#xff09; 第三阶段&#xff1a;进阶部分&#xff08;中级网络安全工程师&#xff09;

数据分析-14-时间序列异常检测的六类常用方法(案例实战)

1 异常值检测的六类方法 异常值检测与处理是数据清洗过程中的一个关键步骤,它涉及到识别和处理那些与大多数数据显著不同的数据点。异常值可能是由于数据录入错误、测量误差、数据损坏或其他原因造成的。处理异常值的目的是提高数据的质量,避免它们对分析结果产生不利影响。…

关于领英的干货文章

今天这篇文章是关于领英的干货文章 没有用领英还有已经在用的朋友记得点赞哦&#xff0c; 这样需要的时候才能找到“我” 从这几个点出发 linkedln的注册&#xff0c;资料信息设置linkedin 发布动态linkedin 加人linkedin 加群客户开发 注册及资料信息设置 注册linkedin新…

无人驾驶遇上‘超级WiFi‘,低速无人驾驶已成为了主要趋势?

嘿,各位工业大佬们!今天咱们来聊个又酷又实用的话题 - 工业无人驾驶!不过,别以为这只是在工厂里溜达溜达的小推车,我们要聊的可是能在矿山里"跑酷"的大家伙! 想象一下,在一个尘土飞扬的露天矿场,几辆庞大的无人卡车正在有条不紊地工作。它们像是被施了魔法一样,自动…

猜测、实现 B 站在看人数

猜测、实现 B 站在看人数 猜测找到接口参数总结 实现 猜测 找到接口 浏览器打开一个 B 站视频&#xff0c;比如 《黑神话&#xff1a;悟空》最终预告 | 8月20日&#xff0c;重走西游_黑神话悟空 (bilibili.com) &#xff0c;打开 F12 开发者工具&#xff0c;经过观察&#xf…

简单的Linux Ftp服务搭建

简单的Linux FTP服务搭建 1.需求 公司有一个esb文件传输代理&#xff0c;其中我们程序有文件传输功能&#xff0c;需要将本地文件传输到esb文件代理服务器上&#xff0c;传输成功之后发送http请求&#xff0c;告知esb将固定文件进行传输到对应外围其他服务的文件目录中&#…

DBA运维小技巧之存储篇-Oracle服务器根目录满了怎么处理(1)LVM情况

故障发生了&#xff01; 周末正在逛街DBA小倩接到一个客户紧急任务&#xff0c;客户说自己的业务数据库突然不好使了&#xff0c;连接也出现了问题&#xff0c;开发人员连库就报这个错 还好正在逛街的小倩同学随身带了笔记本电脑 小倩要来了系统的登录用户名密码&#xff…

AIGC之GAN生成器和判别器的公式

提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 在GAN&#xff08;生成对抗网络&#xff09;中&#xff0c;生成器&#xff08;Generator&#xff09;和判别器&#xff08;Discriminator&#xff09;通常是通过神经网络实现的&#xff0c;因此它们并没有…

林草湿地址、导出echart为word

2.导出 // 导出exportDoc () {this.loading truelet arrRefs [this.$refs.endChart, this.$refs.processChart, this.$refs.officeEndChart]setTimeout(() > {Promise.all(arrRefs.map((canvasDom) > {return this.html2canvasHandle(canvasDom)})).then(res > {let…

【AIGC】InstructPixPix:基于文本引导的图像编辑技术

github:diffusers/examples/instruct_pix2pix/train_instruct_pix2pix_sdxl.py at main huggingface/diffusers GitHub 论文&#xff1a;https://arxiv.org/pdf/2211.09800 摘要 我们提出了一种从人类指令编辑图像的方法&#xff1a;给定一个输入图像和告诉模型做什么的书面…

百度MEG数据开发治理平台-TDS

导读 百度MEG的上一代大数据产品存在平台分散、质量不均和易用性差等问题&#xff0c;导致开发效率低下、学习成本高&#xff0c;业务需求响应迟缓。为了解决这些问题&#xff0c;百度MEG内部开发了图灵3.0生态系统。图灵3.0覆盖了数据全生命周期&#xff0c;包括Turing Data …

人工智能数据基础之概率论入门-学习篇

目录 基本概念随机变量及其分布期望、方差、协方差常见概率分布大数定律与中心极限定理 一、基本概念 1. 试验、事件与样本空间&#xff1a; 试验&#xff08;Experiment&#xff09; 试验是指对一个或多个试验对象进行一次观察或测量的过程。试验具有以下几个特点&#xf…

【计算机网络】电路交换、电报交换、分组交换

【计算机网络】电路交换、电报交换、分组交换 目录 【计算机网络】电路交换、电报交换、分组交换1. 电路交换2. 电报交换3. 分组交换4. 基于分组交换~“虚电路交换”技术 1. 电路交换 电路交换&#xff08;Circuit Switching&#xff09;:通过物理线路的连接&#xff0c;动态地…

JavaScript练手小技巧:利用鼠标滚轮控制图片轮播

近日&#xff0c;在浏览网站的时候&#xff0c;发现了一个有意思的效果&#xff1a;一个图片轮播&#xff0c;通过上下滚动鼠标滚轮控制图片的上下切换。 于是就有了自己做一个的想法&#xff0c;顺带复习下鼠标滚轮事件。 鼠标滚轮事件&#xff0c;参考这篇文章&#xff1a;…

【人工智能学习笔记】4_2 深度学习基础之多层感知机

感知机概述 感知机是人工智能最早的模型,是一种有监督的算法,本质上是一个二分类问题,是神经网络和支持向量机的基础缺点:感知机智能解决单纯的线性问题 感知机的过程 多层感知机的层级结构 多层感知机的层级结构主要包括输入层、隐藏层和输出层、可以用于拟合非线性函数。…

初中生台灯哪个牌子的质量好?五款真的有护眼效果的台灯

现在市面上形形色色的打着“护眼”口号的台灯太多了&#xff0c;因为眼睛对于我们来说很重要&#xff0c;我们看到美丽的事物都因为有他&#xff0c;所以大家一听到护眼就会选择购买。初中生台灯哪个牌子的质量好&#xff1f;很多商家为了赚钱&#xff0c;随便贴个标签就说护眼…

【Mysql】系统服务启动访问报错问题处理:this is incompatible with sql_mode=only_full_group_by

一、背景&#xff1a; 本来已经正常运行的平台&#xff0c;突然有一天由于对服务器进行部分操作迁移&#xff0c;发现jar可以正常启动&#xff0c;但是访问功能一直报错&#xff0c;监控后台日志后&#xff0c;发现了问题&#xff1a; 报错的具体信息如下&#xff1a; Caused…

安全产品概述

防火墙 防火墙的核心功能是过滤掉有害的流量&#xff0c;在专用网络和公共网络之间建立保护屏障。防火墙过滤通常基于一系列规则&#xff0c;如 IP 地址、域名、协议、端口号、关键字等&#xff0c;对入站和出站的流量进行过滤。这些规则也称为访问控制列表&#xff08;ACCESS…

JSON格式

JSON&#xff08;JavaScript Object Notation, JS对象简谱&#xff09;是一种轻量级的数据交换格式。JSON 就是一种字符串格式,这种格式无论是在前端还是在后端,都可以很容易的转换成对象,所以常用于前后端数据传递 说明&#xff1a; JSON的语法 ​ var obj“{‘属性名’:‘…

Vue3.0项目实战(三)——大事件管理系统首页 layout 架子与文章分类的实现

目录 1. 首页 layout 架子 [element-plus 菜单] 1.1 基本架子拆解 2. 登录访问拦截 2.1 需求 2.2 vue3 和 vue2 中的 Vue-Router 区别 3. 用户基本信息获取&渲染 4. 退出功能 [element-plus 确认框] 5. 文章分类页面 - [element-plus 表格] 5.1 基本架子 - PageCo…