#iai22b3. 服务大厅(Service Hall)
服务大厅(Service Hall)
服务大厅(Service Hall)
题目描述
有 位市民在服务大厅门口有序排队办理业务,其中第 位市民办理业务所需时间为 ,当服务大厅开放 个服务窗口时,表示能同时办理 位市民的业务。由于每位市民所办理业务的时间不同,办理完成的市民离开窗口时,当前在等待队列中的第一个市民会前往该窗口继续办理业务。
因服务大厅 分钟后将关闭,请你帮志愿者小爱计算一下,最少需要开放多少个服务窗口,才能使最后办完业务的市民离开服务大厅时间不超过 ?
输入格式
输入共 行:
第一行:输入一个正整数 。
第二行:输入 个正整数 表示每位市民办理业务所需的时间。
第三行:输入一个正整数 。
输出格式
输出共一行,表示满足条件情况下,最少需要开放的窗口数量。
样例输入 #1
5
4 3 6 2 2
10
样例输出 #1
2
样例说明 #1
开放2个窗口:
- t=0时刻,第1,2位市民前往办理
- t=3时刻,第2位市民办理完成,第3位市民开始办理
- t=4时刻,第1位市民办理完成,第4位市民开始办理
- t=6时刻,第4位市民办理完成,第5位市民开始办理
- t=8时刻,第5位市民办理完成
- t=9时刻,第3位市民办理完成,此时所有人办理完成,所需时间为9
数据范围
对于 30% 的数据:,。
对于 60% 的数据:,。
对于 100% 的数据:,。
且数据保证存在合法解。
知识点与难度
本题涉及的知识点从属于 GESP 5级(二分答案、优先队列模拟),难度等级:⭐⭐。
测试点分布
| Subtask | 分值 | 测试点编号 | 说明 |
|---|---|---|---|
| 0 | 10 | 1~2 | 样例 |
| 1 | 20 | 3~8 | 小规模 N≤100 / 特殊: 全同时长 / 特殊: T=单最大值 / 特殊: T=总和 |
| 2 | 15 | 9~11 | Hack: N=1 / Hack: T极紧 / Hack: 递增时长 |
| 3 | 30 | 12~20 | 中规模 N≈100~2000 / 大规模 N≈1e4~2e4 |
| 4 | 25 | 21~25 | 随机 N=1~2e4 回归 |