欢迎大家订阅我的专栏:算法题解:C++与Python实现!
本专栏旨在帮助大家从基础到进阶 ,逐步提升编程能力,助力信息学竞赛备战!
专栏特色
1.经典算法练习:根据信息学竞赛大纲,精心挑选经典算法题目,提供清晰的代码实现与详细指导,帮助您夯实算法基础。
2.系统化学习路径:按照算法类别和难度分级,从基础到进阶,循序渐进,帮助您全面提升编程能力与算法思维。
适合人群:
- 准备参加蓝桥杯、GESP、CSP-J、CSP-S等信息学竞赛的学生
- 希望系统学习C++/Python编程的初学者
- 想要提升算法与编程能力的编程爱好者
附上汇总帖:GESP认证C++编程真题解析 | 汇总
编程题
B3921 小杨的考试
【题目来源】
洛谷:B3921 [GESP202312 一级] 小杨的考试 - 洛谷
【题目描述】
今天是星期X XX,小杨还有N NN天就要考试了,你能推算出小杨考试那天是星期几吗?(本题中使用7 77表示星期日)
【输入】
输入2 22行,第一行一个整数X ( 1 ≤ X ≤ 7 ) X(1\le X\le 7)X(1≤X≤7);第二行一个整数N ( 1 ≤ N ≤ 364 ) N(1\le N \le 364)N(1≤N≤364)。
【输出】
输出一个整数,表示小杨考试那天是星期几。
【输入样例】
1 6【输出样例】
7【算法标签】
《洛谷 B3921 小杨的考试》 #分支结构# #GESP# #2023#
【代码详解】
#include<bits/stdc++.h>// 包含标准库头文件usingnamespacestd;// 使用标准命名空间intx,n;// x:初始星期几,n:经过的天数intmain(){cin>>x>>n;// 输入初始星期几和经过的天数// 循环n次,模拟每一天的变化for(inti=1;i<=n;i++){x=x+1;// 星期数加1if(x>7){// 如果超过7(星期日)x=1;// 重置为星期一}}cout<<x<<endl;// 输出最终星期几return0;// 程序正常结束}【运行结果】
1 6 7B3922 小杨报数
【题目来源】
洛谷:B3922 [GESP202312 一级] 小杨报数 - 洛谷
【题目描述】
小杨需要从1 11到N NN报数。在报数过程中,小杨希望跳过M MM的倍数。例如,如果N = 5 N=5N=5,M = 2 M=2M=2,那么小杨就需要依次报出1 11、3 33、5 55。 现在,请你依次输出小杨报的数。
【输入】
输入2 22行,第一行一个整数N ( 1 ≤ N ≤ 1 , 000 ) N(1≤N≤1,000)N(1≤N≤1,000);第二行一个整数M ( 2 ≤ M ≤ 100 ) M(2≤M≤100)M(2≤M≤100)。
【输出】
输出若干行,依次表示小杨报的数。
【输入样例】
5 2【输出样例】
1 3 5【算法标签】
《洛谷 B3922 小杨报数》 #循环结构# #GESP# #2023#
【代码详解】
#include<bits/stdc++.h>// 包含标准库头文件usingnamespacestd;// 使用标准命名空间intn,m;// n:数字范围上限,m:要跳过的倍数intmain(){cin>>n>>m;// 输入数字范围n和倍数m// 遍历1到n的所有数字for(inti=1;i<=n;i++){// 如果i是m的倍数,跳过不输出if(i%m==0){continue;// 跳过当前迭代}// 否则输出该数字else{cout<<i<<endl;}}return0;// 程序正常结束}【运行结果】
5 2 1 3 5