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页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

2026年6月青少年软件编程C/C++等级考试七级真题(含答案)一、单选题(共5题,共10分)。1.一棵有1000个节点的完全二叉树,其深度为(根节点深度为1)?()。A.9B.10C.11D.12标准答案:B。2.题Dijkstra算法用于求解以下哪个问题?()。A.单源最短路径B.多源最短路径C.最小生成树D.拓扑排序标准答案:A。3.区间DP的核心思想是?()。A.将问题分解为左右两个区间,合并区间结果得到最优解。B.从起点到终点逐步递推C.每次选择当前最优的区间D.递归求解子问题,无记忆化。标准答案:A。4.欧拉函数φ(12)的值是?()。A.2B.4C.6D.8标准答案:B。5.以下哪种哈希函数的设计最容易导致哈希冲突?()。A.除留余数法B.固定地址法C.平方取中法D.随机散列法标准答案:B。二、判断题(共5题,共10分)。6.题A*算法是一种启发式搜索算法()。A.正确B.错误标准答案:正确。7.乘法原理是指完成一件事有多个步骤,每个步骤有多种方法,总方法数为各步骤方法数的乘积。()。A.正确B.错误标准答案:正确。8.题Floyd算法可以求解有负权边的图的最短路径,但不能处理负权环。()。A.正确B.错误标准答案:正确。9.题Prim算法求解最小生成树的时间复杂度为O(n2)。()。A.正确B.错误标准答案:正确。10.最长公共子序列问题只能用动态规划求解,无法用其他方法。()。A.正确B.错误标准答案:错误。三、编程题(共4题,共80分)。11.二叉树遍历。题目描述:有一棵二叉树,结点数量不超过26个,树上的每个结点都有一个大写字母。给定这棵二叉树的中序遍历及后序遍历,请输出它的前序遍历。输入格式:第一行:一个字符串,表示二叉树的中序遍历。第二行:一个字符串,表示二叉树的后序遍历。输出格式:单独一行:一个字符串,表示二叉树的前序遍历。输入样例:DBEACDEBCA输出样例:ABDEC时间限制:1000ms。内存限制:256MiB。参考程序:#include<iostream>#include<string>usingnamespacestd;//中序in,后序post,输出前序。voidbuild(stringin,stringpost){if(in.empty())return;//后序最后一个是根。charroot=post.back();cout<<root;intpos=in.find(root);//递归左右。build(in.substr(0,pos),post.substr(0,pos));build(in.substr(pos+1),post.substr(pos,in.size()-pos-1));}intmain(){stringin,post;cin>>in>>post;build(in,post);return0;}12.平衡运输。题目描述:远古遗迹中发掘出了n件魔力核心,第i件核心蕴含的能量为ki。为了安全运输,需要将这些核心分配到两个不同的能量舱(记为舱A和舱B)中。每件核心必须整个放入一个舱,不可拆分。分配完成后,设舱A的总能量为sa,舱B的总能量为sb。为了平衡运输风险,希望两个舱中总能量较大的一方尽可能小,即最小化max(sa,sb)。请你计算这个最小的最大值。输入格式:第一行,一个整数n。第二行,n个整数k1,k2,…,kn。输出格式:输出一个整数,表示max(sa,sb)的最小可能值。输入样例1:52351012输出样例1:17输入样例2:6222526452231输出样例2:89说明提示:2≤n≤20。1≤ki≤108。时间限制:1000ms。内存限制:256MiB。参考程序:#include<iostream>intN;intA[20];intS=0;intsolve(inti,intsum){if(i==N){returnstd::max(sum,S-sum);}else{autopick=solve(i+1,sum+A[i]);autodrop=solve(i+1,sum);returnstd::min(pick,drop);}}intmain(){std::cin>>N;for(inti=0;i<N;++i){std::cin>>A[i];S+=A[i];}std::cout<<solve(0,0)<<"\n";}13.专属教室。题目描述:在一所学校中,有N个班级,每个班级都有一间专属的教室。第i个班级当前使用的教室编号为Si,但学校计划将其调整到新的教室Ti。已知所有班级当前使用的教室编号互不相同,所有班级希望更换到的教室编号也互不相同。每个班级只能更换一次教室,且一次只能安排一个班级进行更换。在更换时,目标教室必须是空闲的。学校希望找到一个合理的更换顺序,使得所有班级都能顺利迁入目标教室。请判断是否可能。输入格式:第一行一个整数N。接下来N行,每行两个字符串Si和Ti,表示第i个班级当前所在的教室编号和希望迁入的教室编号。输出格式:如果存在一种顺序使得所有班级都能完成更换,输出Yes,否则输出No。输入样例1:2bmmd输出样例1:Yes输入样例2:3abbcca输出样例2:No说明提示:1≤N≤105。Si,Ti为由小写英文字母组成的字符串,长度在1到8之间。Si≠Ti。所有Si互不相同。所有Ti互不相同。时间限制:1000ms。内存限制:256MiB。参考程序:#include<iostream>#include<vector>#include<string>#include<map>usingnamespacestd;map<string,vector<string>>adj;map<string,int>state;boolhas_cycle(stringv){state[v]=1;for(stringnext_v:adj[v]){if(state[next_v]==1)returntrue;if(state[next_v]==0){if(has_cycle(next_v))returntrue;}}state[v]=2;returnfalse;}intmain(){intN;cin>>N;vector<string>S(N),T(N);for(inti=0;i<N;i++){cin>>S[i]>>T[i];adj[S[i]].push_back(T[i]);}for(autoconst&[name,_]:adj){if(state[name]==0){if(has_cycle(name)){cout<<"No"<<endl;return0;}}}cout<<"Yes"<<endl;return0;}14.简单路径。题目描述:给定一个简单无向图,包含N个顶点和M条边。顶点编号为1至N。每个顶点的度数不超过10。定义一条简单路径为顶点序列v1,v2,…,vk,满足v1=1,相邻顶点有边相连,且所有顶点互不相同(长度为0的路径仅包含顶点1本身)。设所有这样的简单路径的总数为K。如果K>220,则输出X;否则输出K。输入格式:第一行,两个整数N,M。接下来M行,每行两个整数ui,vi,表示一条边。输出格式:输出一个整数或大写字母X。输入样例1:421223输出样例1:3输入样例2:46121314232434输出样例2:16输入样例3:821261356383647463415241227143525234537675728输出样例3:2023说明提示:1≤N≤2×105。0≤M≤min(2×105,2N(N−1))。1≤ui,vi≤N。图是简单图,每个顶点度数≤10。时间限制:1000ms。内存限制:256MiB。参考程序:#include<iostream>#include<vector>#include<cstring>usingnamespacestd;constintLIMIT=1<<20;constintMAXN=200005;vector<int>g[MAXN];boolvis[MAXN];intans;voiddfs(intu){ans++;if(ans>LIMIT)return;for(intv:g[u]){if(!vis[v]){vis[v]=true;dfs(v);vis[v]=false;if(ans>LIMIT)return;}}}intmain(){ios::sync_with_stdio(false);cin.tie(0);intn,m;cin>>n>>m;for(inti=0;i<m;++i){intu,v;cin>>u

温馨提示

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

评论

0/150

提交评论