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

2021年CSP-J初赛真题及答案解析(阅读程序3)

2021年CSP-J初赛真题及答案解析(阅读程序3)

第3题

#include<iostream>usingnamespacestd;constintn=100000;constintN=n+1;intm;inta[N],b[N],c[N],d[N];intf[N],g[N];voidinit(){f[1]=g[1]=1;//此处为13行for(inti=2;i<=n;i++){if(!a[i]){b[m++]=i;c[i]=1,f[i]=2;d[i]=1,g[i]=i+1;}for(intj=0;j<m&&b[j]*i<=n;j++){intk=b[j];a[i*k]=1;if(i%k==0){c[i*k]=c[i]+1;f[i*k]=f[i]/c[i*k]*(c[i*k]+1);//此处为25行d[i*k]=d[i];g[i*k]=g[i]*k+d[i];break;}else{c[i*k]=1;f[i*k]=2*f[i];d[i*k]=g[i];g[i*k]=g[i]*(k+1);}}}}intmain(){init();intx;cin>>x;cout<<f[x]<<' '<<g[x]<<endl;return0;}

假设输入的 x 是不超过 1000的自然数,完成下面的判断题和单选题:

判断题(每题 1.5 分)

  1. 若输入不为 1,把第 13 行删去不会影响输出的结果。( )

    • A. 正确 B. 错误
  2. 第 25 行的f[i] / c[i * k]可能存在无法整除而向下取整的情况。( )

    • A. 正确 B. 错误
  3. 在执行完init()后,f数组不是单调递增的,但g数组是单调递增的。( )

    • A. 正确 B. 错误

单选题

  1. init函数的时间复杂度为( )。

    • A. O(n) B.O ( n log ⁡ n ) O(n\log n)O(nlogn)C.O ( n n ) O(n\sqrt{n})O(nn)D.O ( n 2 ) O(n^2)O(n2)
  2. 在执行完init()后,f[1], f[2], f[3], …, f[100]中有( )个等于 2。

    • A. 23 B. 24 C. 25 D. 26
  3. 当输入为1000时,输出为( )。

    • A.15 1340B.15 2340C.16 2340D.16 1340

答案与解析

1. 答案:A(正确)
解析:第 13 行为f[1] = g[1] = 1;,其作用仅为初始化f[1]g[1]。题目限定输入x不为 1,即x ≥ 2,程序只会输出f[x]g[x],不会访问f[1]g[1]。因此删去该行不会影响输出结果。

2. 答案:B(错误)
解析:第 25 行f[i * k] = f[i] / c[i * k] * (c[i * k] + 1);中,c[i * k] = c[i] + 1,此时i含有质因子k的指数为c[i]。约数个数的递推公式要求整除性:原约数个数f[i]必包含因子(c[i] + 1),因此f[i] / (c[i] + 1)可整除,不可能出现向下取整的情况。

3. 答案:B(错误)
解析:f是约数个数函数,显然不单调(如f[6]=4 > f[7]=2)。g是约数和函数,同样不单调(如g[6]=12 > g[7]=8)。因此“g数组单调递增”的说法错误。

4. 答案:A(O(n))
解析:程序使用线性筛(欧拉筛),每个合数仅被其最小质因子标记一次,内层循环总次数与n成正比,因此时间复杂度为O(n)

5. 答案:C(25)
解析:f[i] = 2当且仅当i为素数(约数个数为 2)。1 到 100 之间共有 25 个素数(2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97)。注意f[1]=1,不计算在内。

6. 答案:C(16 2340
解析:1000 = 2³ × 5³。

  • 约数个数:(3+1)×(3+1) = 16
  • 约数和:(1+2+4+8) × (1+5+25+125) = 15 × 156 = 2340
    因此输出为16 2340

更多内容请关注专栏:信奥赛C++普及组csp-j初赛&复赛真题题解(持续更新):https://blog.csdn.net/weixin_66461496/category_12808781.html 点击跳转


【秘籍汇总】(完整csp信奥赛C++学习资料):

1、csp/信奥赛C++,完整信奥赛系列课程(永久学习):

https://edu.csdn.net/lecturer/7901 点击跳转

2、CSP信奥赛C++竞赛拿奖视频课:

https://edu.csdn.net/course/detail/40437 点击跳转

https://edu.csdn.net/course/detail/41081 点击跳转

3、csp信奥赛高频考点知识详解及案例实践:

CSP信奥赛C++动态规划:
https://blog.csdn.net/weixin_66461496/category_13096895.html点击跳转

CSP信奥赛C++标准模板库STL:
https://blog.csdn.net/weixin_66461496/category_13108077.html 点击跳转

信奥赛C++提高组csp-s知识详解及案例实践:
https://blog.csdn.net/weixin_66461496/category_13113932.html 点击跳转

4、csp信奥赛冲刺一等奖有效刷题题解:

信奥赛C++普及组CSP-J一等奖通关刷题题单及题解:
https://blog.csdn.net/weixin_66461496/category_12673810.html 点击跳转

信奥赛C++普及组csp-j初赛&复赛真题题解(持续更新):https://blog.csdn.net/weixin_66461496/category_12808781.html 点击跳转

信奥赛C++提高组csp-s初赛&复赛真题题解(持续更新):
https://blog.csdn.net/weixin_66461496/category_13125089.html 点击跳转

5、GESP C++考级真题题解:

GESP(C++ 一级+二级+三级)真题题解(持续更新):https://blog.csdn.net/weixin_66461496/category_12858102.html 点击跳转

GESP(C++ 四级+五级+六级)真题题解(持续更新):https://blog.csdn.net/weixin_66461496/category_12869848.html 点击跳转


GESP(C++ 七级+八级)真题题解(持续更新):
https://blog.csdn.net/weixin_66461496/category_13117178.html 点击跳转

· 文末祝福 ·

#include<bits/stdc++.h>usingnamespacestd;intmain(){cout<<"跟着王老师一起学习信奥赛C++";cout<<" 成就更好的自己! ";cout<<" csp信奥赛一等奖属于你! ";return0;}

http://www.jsqmd.com/news/1385224/

相关文章:

  • 暗黑破坏神2存档编辑器d2s-editor保姆级教程:3步跑通,从属性修改到装备导入一次学会
  • 构建专业、实用、易用的图像生成系统:从Stable Diffusion到生产级实践
  • 网站建设要学什么:零基础入门指南,从HTML到全栈思维的进阶之路
  • 网页版暗黑2存档编辑器d2s-editor:免安装、支持重制版的免费存档修改工具
  • Diablo Edit2:如何在5分钟内打造完美暗黑破坏神2角色 - 专业存档编辑器完全指南
  • 推荐几个指标中台分析系统品牌:企业统一指标口径与管理方案横评
  • 对讲机SRRC型号核准全流程核验教程|黑龙江政企招投标设备合规避坑指南
  • 2026**空净选购横评|OTA消费数据佐证:告别滤网二次污染,无耗材负离子空气氧吧迎来普及期 - 互联网科技品牌测评
  • 时间同步技术:原理、应用与NTP/PTP实践指南
  • 挑选最佳工具:2026年手机PNG格式转换JPG的免费攻略 - 软件工具教程方法
  • 5分钟告别Mac驱动噩梦:Brigadier Boot Camp驱动自动化终极指南
  • Android无障碍服务实战:利用李跳跳实现微信通话自动接听
  • AD586KRZ-REEL7,4μVp-p 低噪声、10mA 双向输出精密电压源
  • 《派出你的AI同事:WorkBuddy案例实战》055:客服工单自动分类与话术生成
  • 火山引擎+Supabase+IGA Pages:AI Agent应用全栈托管部署实战
  • Switch破解后的第一块敲门砖:nx-hbmenu自制程序启动器保姆级上手指南
  • 培训名单很热闹,真正要看的是谁接到了新任务
  • 传统RAG为什么在企业里不够用,从被动检索到主动推理那道坎
  • 告别手工听写:用 Label Studio 把音频标注效率提升3倍的完整指南
  • 围棋AI分析新境界:如何用LizzieYzy在5分钟内提升你的棋力水平
  • 手机小白也能学会:2026年PNG转JPG简易教程 - 软件工具教程方法
  • 【爱马仕】Hermes 新手实操,借助整合包跳过源码配置步骤
  • Java连接MySQL 8.0实战指南:从JDBC原理到连接池调优
  • BambuStudio切片软件完整实战指南:从首次导入模型到多彩打印全流程
  • 暗黑2存档编辑器免费攻略:网页版d2s-editor 10分钟打造完美角色
  • VO、DTO、BO、PO分层解析:构建清晰、安全、高效的Java数据模型
  • 2026年7月西安市二手房价格深度分析报告
  • 黑龙江高寒林区无线专网无盲区组网技术方案与运维优化实践
  • 宁波抖音代运营/机械设备线索成本低至55元,宁波抖音代运营如何跑出精准询盘
  • 终极游戏手柄兼容解决方案:5分钟让老旧控制器在现代游戏中完美运行