2026年6月青少年软件编程C-C++等级考试五级真题(含答案)_第1页
2026年6月青少年软件编程C-C++等级考试五级真题(含答案)_第2页
2026年6月青少年软件编程C-C++等级考试五级真题(含答案)_第3页
2026年6月青少年软件编程C-C++等级考试五级真题(含答案)_第4页
2026年6月青少年软件编程C-C++等级考试五级真题(含答案)_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2026年6月青少年软件编程C/C++等级考试五级真题(含答案)一、单选题(共10题,共20分)。1.有递推公式`f(n)=2*f(n-1)+1`,`f(1)=1`,则`f(4)`的值是?()。A.7B.15C.31D.63标准答案:B。2.以下关于贪心算法的说法,正确的是?()。A.贪心算法总能得到全局最优解B.贪心算法的核心是每一步选择当前最优的选项C.01背包问题可以用贪心算法得到最优解D.贪心算法的时间复杂度一定比动态规划低标准答案:B。3.已知数组`arr[6]={2,4,6,8,10,12}`,前缀和数组`preSum[0]=0`,`preSum[i]=arr[0]+arr[1]+…+arr[i-1]`,则区间[2,4](下标从0开始)的元素和为?()。A.18B.24C.30D.36标准答案:B。4.对原数组的区间[l,r]全部加上val,对差分数组的操作是?()。A.diff[l]+=val;diff[r]-=val;B.diff[l]+=val;diff[r+1]-=val;C.diff[l]-=val;diff[r]+=val;D.diff[l]-=val;diff[r+1]+=val;标准答案:B。5.在长度为n的有序数组中,二分查找的最坏时间复杂度是?()。A.O(1)B.O(logn)C.O(n)D.O(nlogn)标准答案:B。6.以下哪个问题不适合用双指针算法求解?()。A.有序数组两数之和B.链表中环的检测C.反转字符串D.01背包问题标准答案:D。7.以下哪个STL容器是基于红黑树实现的,元素自动有序且不重复?()。A.vectorB.setC.queueD.list标准答案:B。8.题STL中,用于在容器中查找指定元素的函数是?()。A.sort()B.find()C.swap()D.reverse()标准答案:B。9.以下关于`vector`容器的说法,错误的是?()。A.vector是动态数组,支持动态扩容。B.可以用`push_back()`在数组尾部插入元素C.可以用`pop_front()`删除数组头部的元素D.支持下标随机访问标准答案:C。10.计算整数a的b次方,若使用快速幂算法,时间复杂度为?()。A.O(b)B.O(logb)C.O(a)D.O(1)标准答案:B。二、判断题(共10题,共20分)。11.快速幂的核心是将指数分解为二进制,减少乘法运算的次数。()。A.正确B.错误标准答案:正确。12.递推算法分为顺推和逆推两种,斐波那契数列是顺推的典型应用。()。A.正确B.错误标准答案:正确。13.哈夫曼编码的构建过程中,每次选择权值最小的两个节点合并,使用了贪心思想。()。A.正确B.错误标准答案:正确。14.二维前缀和可以快速求出二维数组中任意子矩阵的元素和。()。A.正确B.错误标准答案:正确。15.差分算法不能处理多次区间修改、单点查询类问题。()。A.正确B.错误标准答案:错误。16.二分查找只能用于查找元素。()。A.正确B.错误标准答案:错误。17.快慢指针可以用于查找链表的中间节点。()。A.正确B.错误标准答案:正确。18.题map容器存储键值对,键唯一不可重复。()。A.正确B.错误标准答案:正确。19.题`string`类的`c_str()`函数可以将string对象转换为C风格的constchar*字符串。()。A.正确B.错误标准答案:正确。20.题`queue`先进先出,队头插入元素,队尾删除元素。()。A.正确B.错误标准答案:错误。三、编程题(共2题,共60分)。21.能量节点。题目描述:数轴上分布着n个能量节点,第i个节点的坐标为xi。当两个节点的距离小于等于d时,会产生能量共鸣。求一共有多少组节点会发生能量共鸣。输入格式:第一行,两个整数表示n与d。第二行,n个整数,表示x1,x2,…,xn。输出格式:单个整数:表示有多少对点可以会产生能量共鸣。输入样例:42530401020输出样例:5说明提示:1≤n≤100,000。1≤d≤1,000,000,000。1≤xi≤1,000,000,000。时间限制:1000ms。内存限制:256MiB。参考程序:#include<iostream>#include<algorithm>intmain(){intn,d;std::cin>>n>>d;inta[100005];for(inti=1;i<=n;++i)std::cin>>a[i];std::sort(a+1,a+n+1);longlongpair=0;for(inti=1,j=1;i<=n;++i){while(a[j]-a[i]<=d&&j<=n)j++;pair+=j-i-1;}std::cout<<pair;}22.刷任务。题目描述:一共有n个小任务,第i个任务会消耗ai点体力、bi点心神。你可以自由安排任务的完成顺序,逐个依次做完任务。当累计消耗的体力总和超过x,或是累计消耗的心神总和超过y时,会立刻停下无法继续做事。求:在运气最差、顺序最不利的情况下,你最少会完成多少个任务就被迫停止。输入格式:第一行,三个整数表示n,x,y。第二行,nn个整数表示a1,a2,…,an。第三行,nn个整数表示b1,b2,…,bn。输出格式:输出一个整数,表示最少完成的任务数量。输入样例1:471823518814输出样例1:2输入样例2:830301234567887654321输出样例2:6说明提示:1≤n≤2×105。1≤x,y≤2×1014。1≤ai,bi≤109。时间限制:1000ms。内存限制:256MiB。参考程序:#include<iostream>#include<algorithm>intmain(){intn;std::cin>>n;longlongx,y;std::cin>>x>>y;inta[n],b[n];for(inti=0;i<n;i++){std::cin>>a[i];}for(inti=0;i<n;i++){std::cin>>b[i];}std::sort(a,a+n);std::sort(b,b+n);longlongX=0;longlongY=0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论