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++编程 三级】

网站链接

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

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

相关推荐
YRr YRr1 分钟前
深入解析最小二乘法:原理、应用与局限
算法·机器学习·最小二乘法
梅见十柒14 分钟前
数据结构与算法分析——你真的理解查找算法吗——基于散列的查找(代码详解+万字长文)
java·c语言·c++·笔记·算法·哈希算法·查找算法
知困勉行的Allen33 分钟前
~C.库函数的介绍~
c语言·开发语言·数据结构·c++·学习方法
ow.41 分钟前
类和对象—上
c++
计算机学姐1 小时前
基于uniapp微信小程序的旅游系统
vue.js·spring boot·mysql·算法·微信小程序·uni-app·旅游
好看资源平台1 小时前
Rust 基础语法与常用特性
算法
禁默1 小时前
C++之多态的深度剖析
开发语言·c++
陈序缘1 小时前
Rust 力扣 - 48. 旋转图像
开发语言·后端·算法·leetcode·职场和发展·rust
CXDNW2 小时前
【算法篇】图论类(1)(笔记)
c++·笔记·算法·leetcode·图论
X BoHang2 小时前
2022 NOIP 题解
算法·深度优先·图论