理论卷2025年3月青少年软件编程(C\C++) · 五级

YLT C++ 5级 2025.03

满分 100 · 及格 60 · 时长 60 分钟 · 共 4 题 (编程题4)
试卷阅览 · 免费预览前 10 题 · 交卷后可查看答案与解析
1
编程题题号 #22144
分值 25

N5668 [CIE 202503 五级 T1] 结绳

题目描述

给定一段一段的绳子,你需要把它们串成一条绳。每次串连的时候,是把两段绳子对折,再如下图所示套接在一起。这样得到的绳子又被当成是另一段绳子,可以再次对折去跟另一段绳子串连。每次串连后,原来两段绳子的长度就会减半。
图
给定 nn 段绳子的长度,你需要找出它们能串成的绳子的最大长度。

输入格式

每个输入包含 11 个测试用例。每个测试用例第 11 行给出正整数 nn(2≤n≤1042 \leq n \leq 10^4);
第 22 行给出 nn 个正整数,即原始绳段的长度,数字间以空格分隔。所有整数都不超过 10410^4。

输出格式

在一行中输出能够串成的绳子的最大长度。结果向下取整,即取为不超过最大长度的最近整数。

样例

样例 1
输入:

8
10 15 12 3 4 13 1 15

输出:

14
2
编程题题号 #22145
分值 25

N5669 [CIE 202503 五级 T2] 从A到B

题目描述

我们来做一个数字游戏,通过一系列操作把一个数字 AA 变成另一个数字 BB。
设当前数字是 XX,规定每次操作可以从以下 33 种里面选一种进行:

  • X=X+1X = X + 1
  • X=X−1X = X - 1
  • X=X×NX = X \times N
    你的任务就是求出从 AA 变成 BB 至少需要多少步。

输入格式

每组输入包含多个测试用例。先给出一个整数 KK(≤10\leq 10),为测试用例的个数。
随后 KK 行,每行给出一个测试用例的三个整数:AA、BB、NN,其中 −105≤A,B≤105-10^5 \leq A, B \leq 10^5,1<N<101 < N < 10。同行数字间以空格分隔。

输出格式

对每个测试用例,在一行中输出从 AA 变成 BB 至少需要多少步。

样例

样例 1
输入:

3
3 11 2
-5 -12 3
-2 1000 7

输出:

3
2
13

提示

【样例解释】:

第 11 组:(3×2×2)−1=11(3 \times 2 \times 2) - 1 = 11
第 22 组:(−5+1)×3=−12(-5 + 1) \times 3 = -12
第 33 组:((((−2+1+1+1+1+1)×7−1)×7+1+1+1)×7−1=1000(((( -2 + 1 + 1 + 1 + 1 + 1 ) \times 7 - 1 ) \times 7 + 1 + 1 + 1 ) \times 7 - 1 = 1000

3
编程题题号 #22146
分值 25

N5670 [CIE 202503 五级 T3] 乘积的最大和

题目描述

给定两组整数 AA 和 BB,你可以从 AA 中任选一个整数,与 BB 中任选的一个整数相乘。注意每个整数至多只能被选中 11 次。将这些乘积加起来,最大值能达到多少?

输入格式

输入第一行给出正整数 NAN_A,为 AA 组中整数的个数,随后一行给出 AA 中的 NAN_A 个整数;然后给出正整数 NBN_B,为 BB 组中整数的个数,随后一行给出 BB 中的 NBN_B 个整数。
数据范围为 1≤NA,NB≤1051 \leq N_A, N_B \leq 10^5,最大答案不超过 2302^{30}。

输出格式

在一行中输出题面要求的乘积和的最大值。

样例

样例 1
输入:

4
1 2 4 -1
4
7 6 -2 -3

输出:

43

提示

【样例解释】:

43=(−1)×(−3)+4×7+2×643 = (-1) \times (-3) + 4 \times 7 + 2 \times 6

4
编程题题号 #22147
分值 25

N5671 [CIE 202503 五级 T4] 收费站在哪里

题目描述

在一条高速公路上,如果已知 nn 座收费站的位置 x1,x2,...,xnx_1, x_2, ..., x_n(不妨假设 0=x1≤x2≤...≤xn0 = x_1 \leq x_2 \leq ... \leq x_n ),就很容易算出一共有 n(n−1)/2n(n-1)/2 个距离的值。
而比较困难的问题是,在收集了一大堆过路费发票后,我们筛选出了 n(n−1)/2n(n-1)/2 个距离的值,现在想知道收费站都分布在哪里?
当然对应一组距离值,可能有多组解,你只要输出任何一个即可。

输入格式

输入第一行给出正整数 mm(<50< 50),即距离值的数量。
随后一行给出 mm 个距离,均为 intint 范围内的正整数。

输出格式

按坐标值升序列出所有收费站的位置,其中 x1=0x_1 = 0。同行数字间以 11 个空格分隔,行首尾不得有多余空格。
注:题目保证所有坐标为 intint 范围内的非负整数。

样例

样例 1
输入:

10
3 4 6 8 1 3 5 2 4 2

输出:

0 2 4 5 8
海小星AI平台海小星AI平台

点亮AI梦想,编程未来之星。专业的青少年AI编程教育平台。

课程方向

  • AIGC人工智能
  • Scratch图形化
  • Python编程
  • C++/NOIP竞赛

联系我们

  • 北京市西城区万博苑7号楼3层F28室
  • +86-010-83553010
  • contact@seanova.cn

© 2026 海小星AI平台|京ICP备2022032747号

隐私政策服务条款