当前位置: 首页 > news >正文

学而思编程周赛入门初赛组 | 2026年春第11周

​欢迎大家订阅我的专栏:算法题解:C++与Python实现!
本专栏旨在帮助大家从基础到进阶 ,逐步提升编程能力,助力信息学竞赛备战!

专栏特色
1.经典算法练习:根据信息学竞赛大纲,精心挑选经典算法题目,提供清晰的代码实现与详细指导,帮助您夯实算法基础。
2.系统化学习路径:按照算法类别和难度分级,从基础到进阶,循序渐进,帮助您全面提升编程能力与算法思维。

适合人群:

  • 准备参加蓝桥杯、GESP、CSP-J、CSP-S等信息学竞赛的学生
  • 希望系统学习C++/Python编程的初学者
  • 想要提升算法与编程能力的编程爱好者

附上汇总贴:学而思编程周赛入门初赛组 | 汇总


单选题

第1题

字形存储码是指供计算机输出汉字(显示或打印)用的二进制信息.也称字模。通常,采用的是数字化点阵字模。现有一个16*16的点阵,已知汉字“一”所占的内存为32字节,那么汉字“二”所占的内存为( )字节。

A. 32

B. 64

C. 128

D. 256

【答案】:A

【解析】

不通的汉字占用内存是一样的

第2题

十进制数10.375对应的二进制数为( )。

A. 1010.001

B. 1010.011

C. 1010.101

D. 1010.010

【答案】:B

【解析】

0.375 = 1/4 + 1/8 =( 0.011 ) 2 (0.011)_2(0.011)2,故选B

第3题

对以下图进行拓扑排序的结果是( )。

A. 0 2 3 4 5 1

B. 0 1 3 4 2 5

C. 0 2 4 3 1 5

D. 0 1 2 3 4 5

【答案】:C

【解析】

图排序从入度为0的点开始,选择一个点后删除其2条边,选择C

第4题

甲、乙、丙、丁四位学员在考试中获得了前四名(没有并列的情况)。甲说:“我是第2名,乙是第3名。” 乙说:“丙是第4名,我是第2名。” 丙说:“丁是第2名,我是第3名。” 丁说:“我是第1名,乙是第3名。” 又知道甲、乙、丙、丁每人都只说对了一半。请问:丙是第( )名。

A. 1

B. 2

C. 3

D. 4

【答案】:D

【解析】

这道题目考察的是逻辑推理能力。

我们需要根据甲、乙、丙、丁四个人的陈述,结合每个人只说对了一半的条件,推断出他们的实际排名。

选项A:丙是第1名。如果丙是第1名,那么丙的两句话"丁是第2名,我是第3名”都是错误的,这与题目条件矛盾,因此选项A错误。

选项B:丙是第2名。如果丙是第2名,那么丙的两句话"丁是第2名,我是第3名”中"我是第3名”是错误的,而“丁是第2名"可能是正确的。但我们需要进一步验证其他陈述是否一致。甲说:“我是第2名,乙是第3名。”如果丙是第2名,那么甲的“我是第2名”是错误的,因此“乙是第3名”必须是正确的。乙说:“丙是第4名,我是第2名。”如果乙是第3名,那么“我是第2

名”是错误的,因此“丙是第4名”必须是正确的,但这与丙是第2名矛盾,因此选项B错误。

选项C:丙是第3名。如果丙是第3名,那么丙的两句话“丁是第2名,我是第3名"中"我是第3名"是正确的,而"丁是第2名"是错误的。甲说:"我是第2名,乙是第3名。”如果丙是第3名,那么“乙是第3名”是错误的,因此"我是第2名”必须是正确的。乙说:“丙是第4名,我是第2名。"如果甲是第2名,那么"我是第2名”是错误的,因此"丙是第4名”必须是正确的,但这与丙是第3名矛盾,因此选项C错误。

选项D:丙是第4名。如果丙是第4名,那么丙的两句话“丁是第2名,我是第3名"中"我是第3名"是错误的,因此"丁是第2名"必须是正确的。甲说:“我是第2名,乙是第3名。”如果丁是第2名,那么"我是第2名"是错误的,因此"乙是第3名"必须是正确的。乙说:“丙是第4名,我是第2名。”如果乙是第3名,那么"我是第2名"是错误的,因此“丙是第4名"必须是正确的,这与丙是第4名一致。丁说:“我是第1名,乙是第3名。”如果乙是第3名,那么"乙是第3名”是正确的,因此"我是第1名”必须是错误的。

综合以上分析,只有选项D符合所有条件,因此丙是第4名。

第5题

考虑如下递归函数

intsolve(intx){if(x<=2){return1;}returnsolve(x-1)*solve(x-2)+x;}

则调用 solve(6) 得到的返回结果为( )。

A. 302

B. 37

C. 303

D. 36

【答案】:A

【解析】

将6代入函数计算即可,可以使用递推算法加快速度。

阅读程序题

假设下列代码输入的两个字符串长度相同,回答下列问题:

#include<iostream>#include<cstring>#include<cstdio>usingnamespacestd;chars1[10];chars2[10];intlen;inlineintfind(charch){for(inti=0;i<len;i++){if(s1[i]==ch)returni;}}voiddfs(intl1,intr1,intl2,intr2){intm=find(s2[r2]);// 已知后序遍历求前序遍历cout<<s2[r2];if(m>l1)dfs(l1,m-1,l2,r2-r1+m-1);if(m<r1)dfs(m+1,r1,l2+m-l1,r2-1);}intmain(){cin>>s1;// 中序遍历cin>>s2;// 后序遍历len=strlen(s1);dfs(0,len-1,0,len-1);}

第6题

输出的字符串长度与字符串s1的长度一定相同( )

A. 正确

B. 错误

【答案】:A

【解析】

遍历并不会改变字符串长度

第7题

在19行和20行的if判断中的小于号或者大于号改为小于等于或大于等于号不会改变程序的运行结果( )。

A. 正确

B. 错误

【答案】:B

【解析】

增加等于号会改变运行结果(包含了根)

第8题

该程序的时间复杂度为( )

A.

B.

C.

D.

【答案】:B

【解析】:

树形遍历,每个点都会被访问一次,所以时间复杂度为,第17行find也会执行n次,所以总体时间复杂度为

第9题

输入

BADC BDCA

输出为( )。

A. ABDC

B. ABCD

C. BACD

D. ACBD

【答案】:B

【解析】

画出树,前序遍历结果为ABCD

第10题

输入

EIFBACGHD IBFEHGDCA

输出为( )。

A. AEFIBDCGH

B. AEFIBCDGH

C. AEFBICDGH

D. AEFIBCDHG

【答案】:B

【解析】

画出树,前序遍历结果为AEFIBCDGH

完善程序题

给出若干个整数,询问其中是否有一对数的和等于给定的m的数。

若存在和为m的数对,输出两个整数,小的在前,大的在后,中间用单个空格隔开。若有多个数对满足条件,选择数对中较小的数更小的。若找不到符合要求的数对,输出一行No。

#include<cstdio>#include<algorithm>usingnamespacestd;inta[100010];intn,m;intmain(){cin>>n;for(inti=1;i<=n;i++)cin>>a[i];cin>>m;__1__;intl,r=n,mid;for(inti=1;i<=n;i++){intt=__2__;l=i+1;while(l<=r){// 二分答案模板mid=(l+r)/2;if(a[mid]==t){cout<<a[i]<<" "<<t<<endl;__3__;}elseif(a[mid]<t)__4__;elseif(__5__)r=mid-1;}}cout<<"No";return0;}

第11题

1处应该填( )。

A.sort(a,a+n)

B.sort(a+1, a+1+n)

C.memset(a,0,sizeof(n));

D.memset(a,0,sizeof(a));

【答案】:B

【解析】

最后输出较小中的更小,应该先按照从小到大进行排序

第12题

2处应该填( )。

A.a[i]

B.m-a[i]

C.0

D.m

【答案】:B

【解析】

按照第20行的输出,这里应该输出两个数,两个数之和为m。如果前一个为a[i],那么后一个就应该为m-a[i]

第13题

3处应该填( )。

A.break

B.return 0

C.continue

D.cout << endl

【答案】:B

【解析】

因为只需要输出最小的结果,那么这里直接结束程序

第14题

4处应该填( )。

A.r=mid

B.l=mid

C.l=mid+1

D.l=mid-1

【答案】:C

【解析】

二分答案,这里l = mid+1,选C

第15题

5处应该填( )。

A.a[mid]>a[i]

B.a[mid]<a[i]

C.a[mid]>t

D.a[mid]>=t

【答案】:C

【解析】

前面是==t<t,那么这里是>t,选C

http://www.zskr.cn/news/1494215.html

相关文章:

  • 告别命令行恐惧:用msys2的pacman包管理器搞定Windows下的软件安装与更新
  • AI安全门禁CGL原理与工程适配指南
  • 告别手动复制粘贴!用UiPath Studio 2024.10读取Excel数据,5分钟搞定自动化第一步
  • 无需代码操作,OpenClaw Windows 可视化部署与模型使用指南
  • 抖音无水印批量下载器:3步掌握高效自动化下载技巧
  • AI Pin无屏幕交互:用光子投射与触觉反馈重塑瞬时信息获取
  • GAN训练调参秘籍:如何用F-散度中的海林格距离和卡方距离替代KL散度?
  • pgvector 核心原理:向量索引类型与距离度量深度解析
  • 如何用Python工具完整备份你的QQ空间历史说说:GetQzonehistory终极指南
  • wxapkg-convertor终极指南:5分钟掌握微信小程序反编译专业技巧
  • 如何完全免费永久保存微信聊天记录:WeChatMsg终极指南
  • GBase 8a之统信操作系统 SSH 远程执行命令异常处理:符号冗余与文件存在性误判解决方案
  • 3-8译码器在FPGA板卡上的实战:驱动LED流水灯与按键扫描(Verilog实现)
  • 从后端到高薪AI应用:3-6个月实战转型路线(小白收藏版)
  • jQuery.Marquee:现代化跑马灯效果的技术实现与实战应用
  • 网站突然打不开,怎么快速判断是不是遭遇DDoS攻击?
  • 运维技术支援
  • 泉州公司注销处理机构排行 合规高效服务盘点 - 起跑123
  • 从Word2Vec到BERT:为什么PMI(点间互信息)仍是理解词嵌入的底层密码?
  • Adobe-GenP 3.0:免费解锁Adobe全家桶的终极解决方案 [特殊字符]
  • 别让基线漂移毁了你的信号!手把手教你用Matlab的detrend函数搞定心电/脑电数据预处理
  • Windows 10终极性能优化指南:如何通过开源工具释放系统50%以上资源
  • 终极方案:iOS无越狱定制工具Misaka深度解析与实战指南
  • 告别XGBoost?用TabNet处理表格数据实战:从信用卡欺诈检测到模型调优
  • Visio 2021不只是画流程图?解锁5个被低估的办公神技,提升效率翻倍
  • 大连手表回收 中山区江诗丹顿回收 专业检测极速打款无套路 - 奢侈品回收评测
  • 足不出户卖理查德米勒名表,合扬哈尔滨上门即时打款 - 奢侈品交易观察员
  • 2026上海钢管脚手架靠谱供货商深度盘点:六家本土实力品牌的核心工艺与工程案例全解析 - 品牌发掘
  • PyFluent终极指南:如何用Python脚本彻底改变你的CFD仿真工作流
  • 青岛钻石回收实测测评:本地靠谱奢侈品回收门店添价收全方位对比解析 - 薛定谔的梨花猫