青少年软件编程(C语言)等级考试试卷(五级)
分数:100 题数:4
一、编程题(共4题,共100分)
1.
列车调度
火车站的列车调度铁轨的结构如下图所示。
两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道。每趟列车从入口可以选择任意一条轨道进入,最后从出口离开。在图中有 9 趟列车,在入口处按照 { 8,4,2,5,3,9,1,6,7 } 的顺序排队等待进入。如果要求它们必须按序号递减的顺序从出口离开,则至少需要多少条平行铁轨用于调度?
时间限制:5000
内存限制:65536
输入
输入第一行给出一个整数 N (2 ≤ N ≤ 10
5
),下一行给出从 1 到 N的整数序号的一个重排列。数字间以空格分隔。
输出
在一行中输出可以将输入的列车按序号递减的顺序调离所需要的最少的铁轨条数。
样例输入
9
8 4 2 5 3 9 1 6 7
样例输出
4
试题编号:20240622-5-01
试题类型:编程题
标准答案:
试题难度:一般
试题解析:
展示地址:
点击浏览
考生答案:(此题已作答)
考生得分:0
是否评分:已评分
评价描述:
2.
实验室使用排期
负载均衡
是指在一组后端服务器上有效地分配传入的网络流量。负载均衡算法按照某种特定方法分配负载。
如果我们可以估算出最大的传入流量负载,则可以根据以下规则设计算法:
- 大小为S的传入流量负载将首先被分解为两块,并且每块可以再次被分解为两块,以此类推。
- 每轮只做一次分解。
- 在任何时候,最小负载的规模必须严格大于最大负载规模的一半。
- 所有的规模都是正整数。
- 这个分解过程会一直进行下去,直到不可能再进行任何分解。
例如,如果S=7,那么我们可以先将其分解为3+4,然后继续分为4=2+2。这个分解终止时,我们需要3台服务器,其负载分别为3、2、2。
本题要求此算法所需的后端服务器的最大数量。由于分解可能不是唯一的,因此请找到最佳解决方案 —— 即使最大和最小规模之间的差异最小化的解。
时间限制:9000
内存限制:65536
输入
输入给出一个正整数 S(2 ≤ S ≤ 200),为传入流量负载的规模。
输出
在一行中输出两个数字:M 为所需的后端服务器的最大数量;D 为使用了 M 个服务器的解决方案中,最大和最小规模之差的最小值。一行中的数字间必须以一个空格分隔,行的开头或结尾不能有多余的空格。
样例输入
22
样例输出
4 1
提示
样例解释: 分解负载的方法是不唯一的,例如可以做 22 = 8 + 14 = 8 + 7 + 7 = 4 + 4 + 7 + 7 或者 22 = 10 + 12 = 10 + 6 + 6 = 4 + 6 + 6 + 6 或
202406 C语言五级,2024年6月电子学会C语言编程等级考试五级真题试卷