万卷网> 信息素养大赛 >C++编程挑战赛 > 2023年全国青少年信息素养大赛C++算法创意实践挑战赛_小学组_复赛_真题1

2023年全国青少年信息素养大赛C++算法创意实践挑战赛_小学组_复赛_真题1
复赛 真题 小学 2023 2025-04-09 18:26:25 78

一、编程题

1.

捡石头

【题目描述】

小强在河边捡了 2 块漂亮的石头,他想再捡两块石头,让这 4 块石头的质量正好为 30 斤,并且新捡的两块石头的质量是介于前两块石头的质量之间的数字,请编程 输出第 3 块和第 4 块石头的质量。注:每个石头的重量都是整数,如果找不到合适 的石头,则输出 0 0。

【输入格式】

输入 2 个数,数与数之间以空格间隔,表示 2 块石头的质量。

【输出格式】

输出表示第 3、4 块石头的质量的所有可能结果,每块石头质量的数字用空格隔开。多组结果时,按第 3 块石头质量从小到大排序分行输出。


【样例输入】

1 11

【样例输出】

8 10
9 9
2.

统计考试成绩

【题目描述】

期末考试结束了,老师要统计班里学生的考试成绩分布,已知每个同学的考试成绩为在 0 到 100 分之间的整数,设计一个程序,输入每个同学的成绩,计算出在 平均成绩 (成绩平均值向下取整) 之上的 (大于等于平均成绩) 和在平均成绩之下 的 (小于平均成绩) 的同学的人数。

【输入格式】

第一行 n 为学生成绩个数,0<n<50。

第二行,由空格隔开的每个同学的成绩,为 1 到 100 间的整数。

【输出格式】

两个整数,由空格隔开,为平均分以上人数和平均分以下人数。


【样例输入】

12
10080 93 66 73 50 96 100 84 47 97 71

【样例输出】

7 5
3.

判断数字出现了几次

【题目描述】

给定一个正整数n,判断从 1 到这个数本身的所有数中,一共出现了多少次数字 k。

【输入格式】

输入共 1 行,包括一个正整数 n 和一个正整数 k。(0<n<32767,0<k<10)

【输出格式】

输出共 1 行,一个整数,表示 1 到 n 之间的所有数 (包括n),一共出现了几次k。


【样例输入】

133

【样例输出】

2
4.

滑雪板打包问题

【题目描述】

一家新开业的滑雪场,需要采购不同规格的滑雪板,每个滑雪板的长度是不固定的,现在需要把排列好的滑雪板用木板做成木箱封装好进行快递,每次快递的总重量是有限制的,不能超过重量 G。只要每次打包的重量不超过 G,多个滑雪板可以摞 放在一起,使用与最长滑雪板长度相同的两个木板进行固定。假设,

给出排列好的 每个滑雪板的重量Gi,和长度Li,请计算需要最少多长的木板才能将所有的滑雪板把包好。

【输入格式】

输入的第一行有两个数字,一个是滑雪板的个数,一个是包裹总重量。以下滑雪板个数行,每行的第一个数是滑雪板的重量 Gi 和长度 Li。

【输出格式】

输出需要最少的木板的总长度。注:每次打包需要 2 个木板。


【样例输入】

5 5
2 1
1 2
1 3
2 3
2 2

【样例输出】

10
公众号
客服 反馈
顶部