news 2026/9/3 16:39:02

2026年03月GESPC++五级真题解析(含视频)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
2026年03月GESPC++五级真题解析(含视频)

视频讲解:GESP2026年3月五级C++真题讲解

一、单选题

第1题

解析:

答案D

A:需要找到前驱结点,才能删除 B:没有头结点时,存在空指针 C:循环双链表,尾结点的next指向头结点

第2题

解析:

答案C,只有C选项符合

第3题

解析:

答案B,要删除x结点,就是x前驱结点 指向 x后驱结点,即cur->next = del->next

第4题

解析:

答案A

模拟辗转相除法过程 48/18=2...12 18/12=1...6 12/6=2...0 6/0

第5题

解析:

答案C,for循环primes动态数组,即从0下标 至 primes的size

第6题

解析:

答案C

is_compostie数组情况 下标:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15... 数值:0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 假设n为15 i为2时 下标:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15... 数值:0 0 0 1 0 1 0 1 0 1 0 1 0 1 0 i为3时,从3*3=9开始标记,6已经被2的倍数标记过了 下标:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15... 数值:0 0 0 1 0 1 0 1 1 1 0 1 1 1 1

第7题

解析:

答案B

二分答案在查找数组中,至少k个数据,每个数据之间之间的最大值 数组:1 2 4 8 9 1 4 9,3>=k,差距最大为3

第8题

解析:

答案A,当>x时,保留当前数据,试着往更小去找,所以mid需要保留,即r=mid

第9题

解析:

答案D,栈溢出,程序就无法正常运行了

第10题

解析:

答案A

check(mid)符合条件时,往更大去尝试,即l=mid+1 check(mid)不符合条件时,往更小去尝试,即r=mid-1

第11题

解析:

答案B,循环n次,递归logn次,即nlogn

第12题

解析:

答案B,从小到大排序,小的先入队,A想要入队,即A[i]<=B[j]

第13题

解析:

答案C,快排最坏的情况是n²

第14题

解析:

答案B,只有选择排序、快速排序、希尔排序、堆排序是稳定的

第15题

解析:

答案B,rem代表余数,即rem%=b

二、判断题

第1题

解析:

答案√

数组访问为O(1),插入元素为O(n) 单链表访问为O(n),插入结点为O(1)

第2题

解析:

答案√

if( a[mid] >= x ) r = mid; 当 >=x,保留当前答案,往更小去二分查找

第3题

解析:

答案×

8(a) 3 8(b) 4 9 2 1 中间值为4时: 2 3 1 4 9 8(a) 6 8(b) 只看4的右边:9 8(a) 8(b) 中间值为8(a)时: 8(b) 8(a) 9 8(a) 3 8(b)的相对位置发送改变了

第4题

解析:

答案√,递归函数T(n/2),即复杂度为logn,每次递归O(n),即 n logn

第5题

解析:

答案×,只计算了一次的归并排序逆序对,没有用归并排序计算全部的

第6题

解析:

答案√

例如12=2*2*3,分解质因数,只有唯一的情况 罗列36的因数 1 2 3 4 6 9 12 18 36 发现因数成对出现,(1,36) (2,18) (3,12) (4,9),只有平方根6特殊 小因数为:1 2 3 4;大因数:9 12 18 36 只需要找小因数,没必要找大因数,即小因数的范围1<x && x<sqrt(36)

第7题

解析:

答案√

第8题

解析:

答案×,以下硬币选取案例,贪心有最优子结构,但是没有重叠子结构,计算出最优解

第9题

解析:

答案×,是被最小的质因子筛去

假设所有都是质数,除了1 数字:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15... 标记:1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 i从2开始循环 i为2时,出现质数:2。2*2=4标记不是质数 数字:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15... 标记:1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 i为3时,出现质数:2 3。3*2=6、3*3=9标记不是质数 数字:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15... 标记:1 0 0 1 0 1 0 0 1 0 0 0 0 0 0 i为4时,出现质数:2 3。2*4=8标记不是质数 ,4*3没必要标记,等等6*2会标记 所以【以最小质因子筛选】 数字:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15... 标记:1 0 0 1 0 1 0 0 1 0 0 0 0 0 0

第10题

解析:

答案×,任何递归都可以改写非递归,但是改写后不再需要栈

//递归 int fib(int n) { if (n <= 1) return n; return fib(n-1) + fib(n-2); } //改写while int fib(int n) { if (n <= 1) return n; int a = 0, b = 1, i = 2; while (i <= n) { int c = a + b; a = b; b = c; i++; } return b; } //改写for int fib(int n) { if (n <= 1) return n; int a = 0, b = 1; for (int i = 2; i <= n; i++) { int c = a + b; a = b; b = c; } return b; }

三、编程题

第1题 [GESP202603 五级] 有限不循环小数

题目描述

若 a1​ 可化为一个有限的,不循环的小数,则称 a 为终止数

请你求出在 L 到 R 中终止数的数量。

输入格式

输入一行,包含两个整数 L,R。

输出格式

输出一行,包含一个整数,表示 L 到 R 中终止数的数量。

输入输出样例

输入 #1

2 11

输出 #1

5

说明/提示

样例解释

在 [2,11] 终止数有 2、4、5、8、10。

数据范围

保证 1≤L≤R≤10^6。

答案

#include<bits/stdc++.h> using namespace std; int main(){ //1)确定范围 int L,R;cin>>L>>R; //2)循环L至R int ans=0; for(int i=L;i<=R;i++){ //3)判断是否为终止数 //只能是2或5的倍数 int copy=i; while(copy%2==0) copy/=2; while(copy%5==0) copy/=5; if(copy==1) ans++; } cout<<ans; return 0; }

第2题 [GESP202603 五级] 找数

题目描述

给定一个包含 n 个互不相同的正整数的数组 A 与一个包含 m 个互不相同的正整数的数组 B,请你帮忙计算有多少个数在数组 A 与数组 B 中均出现。

输入格式

第一行包含两个整数 n,m。

第二行包含 n 个正整数 a1​,a2​,⋯,an​ 表示数组 A。

第三行包含 m 个正整数 b1​,b2​,⋯,bm​ 表示数组 B。

输出格式

输出一个整数,表示在数组 A 与数组 B 中均出现的数的个数。

输入输出样例

输入 #1

3 5 4 2 3 3 1 5 4 6

输出 #1

2

说明/提示

样例解释

样例 1 中,4、3 在数组 A 与 B 中均出现。

数据范围

对于 40% 的数据,保证 1≤n,m≤1000。

对于 100% 的数据,保证 1≤n,m≤10^5,1≤ai​,bi​≤10^9。

答案

#include<bits/stdc++.h> using namespace std; map<int,bool> vis; int main(){ //1)填充数据 int n,m; cin>>n>>m; for(int i=1;i<=n;i++){ int a;cin>>a; //2)标记出现 vis[a]=1; } //3)根据vis标记 判断是否重复出现 int ans=0; for(int i=1;i<=m;i++){ int b;cin>>b; if(vis[b]==1) ans++; } cout<<ans; return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/3 16:38:42

Arduino UNO Q 上手指南:从迁移兼容性到智能小车实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/3 16:36:56

AI安全测试入门:一文理清LLM、Skills、MCP、模型与智能体

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/3 16:34:58

统帅LF4-526WL1U1冰箱选购指南:如何评估大容量法式四门的质价比

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/3 16:34:18

Python 在 DevOps 中的应用:自动化与监控系统的构建

随着文化以及实践的广泛普及, 开发团队跟运维团队之间的界限慢慢地变得模糊起来, 自动化以及持续交付的需求持续不断地在增长,在此进程当中, 作为一种具备高效特性且拥有灵活特质的编程语言, 在相关领域里发挥了关键的作用, 不管是自动化部署方面、基础设施管理方面, 还是系统监…

作者头像 李华
网站建设 2026/9/3 16:33:08

技术博客写作指南:避开敏感话题,推荐四大方向

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/3 16:32:52

Python项目国内部署实战:PyPI镜像与GitHub代理的自动化解决方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华