#P005883. 任务安排
任务安排
当前没有测试数据。
题目描述
某研究所新研发了一个项目。该项目有 个研究任务待分配,任务编号为 ~ ;共有 个研究员参与本项目,研究员编号为 ~ 。
出于任务保密的原则,对于任务分配有着一定的要求:
- 每个研究员必须分配任务列表中的一段编号连续的任务,当然,只分配一个任务或者不分配任务 也是可以的。
- 同一个任务只能被同一个研究员领取,第 个任务一旦分配给了某研究员,其他人员不得参与该任务。
- 为提升分配效率,拟定分配方式为:所有研究员按自己 编号从大到小的顺序 依次领取任务,每个研究员会尽可能多的领取任务。(可能会形成部分编号较小的研究员领取不到任务的情况)
请编程计算出合理的任务分配方案,使得项目完成时间尽可能的短;项目完成时间的计算方式为:最后一个完成任务的研究员,其完成任务的总时间。
输入格式
输入 个整数 和 。
第 行有 个整数,第 个整数 表示编号为 的任务耗时。
输出格式
输出 若干行,每行 个整数,第 行代表某个 分配到任务的研究员 领到任务的起止编号(没有分配到任务的研究员不需要输出)。
请按照分配任务起止编号字典序从小到大的顺序输出。
样例
输入
9 3
1 2 3 4 5 6 7 8 9
输出
1 5
6 7
8 9
数据范围
对于 的数据,满足 。
对于 的数据,满足 ,。