#4876. 某服务大厅同时开放3个窗口为客户办理业务(2022年11月STEMA选拔赛)
某服务大厅同时开放3个窗口为客户办理业务(2022年11月STEMA选拔赛)
Background
**第四题(难度系数4,25个计分点) **
题目编号:22112701PB04 知识点:循环判断 数组
(注.input()输入函数的括号中不允许添加任何信息)
编程实现**:**
某服务大厅同时开放3个窗口为客户办理业务,窗口编号分别为1、2、3。
现有N(2≤N≤50)位客户需要办理业务,客户编号为1~N,作为办理业务的先后顺序。
起初三个窗口为空闲状态,空闲的窗口会按照客户编号顺序呼叫下一位客户。如果多个窗口同时为空闲状态,按照窗口编号顺序呼叫(1优先于2,2优先于3)。
现给出每位客户办理业务的时间(单位:分钟),请计算出N位客户全部办理完业务后,哪一个窗口合计办理业务的时间最短,并输出最短时间。
例如:N=7,7位客户编号分别为1、2、3、4、5、6、7,客户办理业务时间分别为3、5、2、4、7、1、6,(如下图):
初始客户编号为1、2、3的客户分别在1、2、3窗口同时办理业务;
窗口3用时2分钟办理完3号客户的业务,变为空闲状态,并按顺序呼叫4号客户,用时4分钟;
窗口1用时3分钟办理完1号客户的业务,变为空闲状态,并按顺序呼叫5号客户,用时7分钟;
窗口2用时5分钟办理完2号客户的业务,变为空闲状态,并按顺序呼叫6号客户,用时1分钟;
6分钟后,窗口2和3同时变为空闲状态,窗口2呼叫7号客户,用时6分钟。
全部客户办理完业务后,三个窗口总用时分别为10分钟、12分钟、6分钟,用时最短的是窗口3,最短时间为6分钟。
输入描述:
第一行输入一个正整数N(2≤N≤50),表示办理业务的客户数
第二行输入N个正整数(1≤正整数≤50),依次表示每位客户办理业务的时间,正整数之间以一个空格隔开
输出描述:
输出一个整数,表示客户全部办理完业务,用时最短的窗口所用时间
样例输入:
7
3 5 2 4 7 1 6
样例输出:
6
评分标准:
4分:能正确输出第一组数据;
4分:能正确输出第二组数据;
4分:能正确输出第三组数据;
4分:能正确输出第四组数据;
4分:能正确输出第五组数据;
5分:能正确输出第六组数据。
Limitation
1s, 1024KiB for each test case.