2024年9月青少年软件编程(C语言/C++)等级考试试卷(三级)

2024.09 电子学会青少年软件编程(C/C++)等级考试试卷(三级)

编程题(共 5 题)

1 爆气球

爆气球对孩子们来说是很好玩的游戏。假设有 n 只气球被布置在一条直线上,游戏的目标很简单,就是爆掉尽可能多的气球。但是这里我们加一条特殊的规则 ------ 你只能跳一次。我们假设聪明的娃穿了件浑身带刺的衣服,跳到某个位置,躺平,这样气球只要碰到娃身体的任何部分都会立刻爆炸。那么你的任务就是告诉娃应该跳到哪里,才能一次爆掉最多的气球。

时间限制:4000 内存限制:262144

输入

输入第一行两个正整数:n(≤ 105)为一条线上布置的气球的数量;h(≤ 103)为孩子伸直双臂能达到的高度。第二行给出 n 个整数,每个对应一只气球在直线轴上的坐标。题目保证坐标按递增顺序给出,所有坐标值在 [-106, 106] 区间内。

输出

在一行中输出孩子跳跃的位置坐标,使得孩子跳到这个位置然后躺平能够爆掉身下最多的气球;随后输出能爆掉的气球的最大数量。如果这个坐标不唯一,输出最小的那个值。 一行中的数间应有 1 个空格。

样例输入

11 120

-120 -40 0 80 122 140 160 220 240 260 300

样例输出

120 5

提示

注意:跳到从 120 到140,或 240 到 260 之间的任何位置,都可以爆掉 5 只气球,所以 120 作为最小的坐标被输出。

2 乘法小宇宙

一个 n 位数的正整数 A=anan-1...a1 和另一个 2 位数的正整数 B=b2b1 相乘,其乘法展开式如下图所示:

其中 C=cn+1cn...c1 是 A 与 b1 相乘的结果,D=dn+1dn...d1 是 A 与 b2 相乘的结果,P=pn+2pn+1...p1 是 A 与 B 相乘的结果。

若上图中的每一位数字都在一个给定的非零个位数字集合 S 里,则称 A 和 B 属于同一个乘法小宇宙 S。

本题给定乘法小宇宙 S 和 A 的位数,请你找出同属于这个乘法小宇宙中的所有 A 和 B。

时间限制:6000 内存限制:65536

输入

输入在一行中给出两个正整数 n(< 8)和 K(≤ 5),分别是 A 的位数和乘法小宇宙 S 中元素的个数。第二行给出 K 个 (0, 10) 区间内的整数,为 S 中的元素。题目保证没有重复元素。数字间以空格分隔。

输出

按照 A 的非递减序输出所有同属于这个乘法小宇宙中的 A 和 B,每行输出一对,数字间以 1 个空格分隔,行首尾不得有多余空格。对同一个 A,按 B 的递增序输出。若没有解,则输出 `No Solution`。

样例输入

样例#1:

4 5

4 2 1 6 5

样例#2:

3 4

9 2 5 6

样例输出

样例#1:

5556 44

6111 24

6111 42

样例#2:

No Solution

================================================

答案和更多内容请查看网站:【试卷中心 -- C/C++编程 三级】

网站链接

青少年软件编程历年真题模拟题实时更新

================================================

相关推荐
Victory_orsh7 小时前
“自然搞懂”深度学习系列(基于Pytorch架构)——01初入茅庐
人工智能·pytorch·python·深度学习·算法·机器学习
88号技师7 小时前
2025年8月SCI-汉尼拔·巴卡优化算法Hannibal Barca optimizer-附Matlab免费代码
开发语言·人工智能·算法·数学建模·matlab·优化算法
_w_z_j_7 小时前
C++----变量存储空间
开发语言·c++
龙腾AI白云7 小时前
大模型-高效优化技术全景解析:微调 量化 剪枝 梯度裁剪与蒸馏 上
算法
地平线开发者7 小时前
新版 perf 文件解读与性能分析
算法·自动驾驶
lingran__7 小时前
算法沉淀第五天(Registration System 和 Obsession with Robots)
c++·算法
chrispang7 小时前
浅谈 Tarjan 算法
算法
莱茶荼菜7 小时前
一个坐标转换
c++·算法
guguhaohao8 小时前
list,咕咕咕!
数据结构·c++·list
雨落在了我的手上8 小时前
C语言入门(十):函数的深入认识
c语言