GESP认证C++编程真题解析 | B3923 [GESP202312 二级] 小杨做题
2026/6/10 12:53:22 网站建设 项目流程

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

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

适合人群:

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

附上汇总帖:GESP认证C++编程真题解析 | 汇总


【题目来源】

洛谷:[B3923 GESP202312 二级] 小杨做题 - 洛谷

【题目描述】

为了准备考试,小杨每天都要做题。第1 11天,小杨做了 道题;第2 22天,小杨做了道题;从第3 33天起,小杨每天做的题目数量是前两天的总和。

此外,小杨还规定,当自己某一天做了大于或等于m mm题时,接下来的所有日子里,他就再也不做题了。

请问,到了第N NN天,小杨总共做了多少题呢?

【输入】

总共4 44行。第一行一个整数a aa,第二行一个整数b bb,第三行一个整数m mm,第四行一个整数N NN

【输出】

一行一个整数,表示小杨N NN天里总共做了多少题目。

【输入样例】

1 2 10 5

【输出样例】

19

【算法标签】

《洛谷 B3923 二级] 小杨做题》 #GESP# #2023#

【代码详解】

#include<bits/stdc++.h>// 包含标准库头文件constintN=370;// 定义数组最大长度usingnamespacestd;// 使用标准命名空间intm,n;// m:阈值,n:项数inta[N];// 存储数列的数组intmain(){// 输入前两项和参数m,ncin>>a[1]>>a[2]>>m>>n;// 生成数列直到第n项或超过阈值mfor(inti=3;i<=n;i++){a[i]=a[i-1]+a[i-2];// 斐波那契数列规则if(a[i]>=m){// 如果超过阈值mn=i;// 调整实际计算的项数break;// 终止生成}}// 计算数列前n项的和intans=0;for(inti=1;i<=n;i++){ans+=a[i];// 累加每项}cout<<ans<<endl;// 输出结果return0;// 程序正常结束}

【运行结果】

1 2 10 5 19

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询