题目描述
服务台只办理两类业务:类别 与类别 。共有 项服务,第 项属于类别 ,需要连续服务 分钟;全部服务从时刻 起就绪,服务一旦开始不可中断。
服务台按如下写死的规程工作,不做任何优化:
- 各次服务轮流「发起」:第 次轮到类别 ,第 次轮到类别 ,第 次轮到类别 ,如此交替;
- 轮到类别 时,若类别 还有未服务项,取其中 最小的一项开始服务( 相同取编号 最小的);若类别 已无未服务项,则由另一类别按同样规则顶替这一次服务;
- 服务不可中断,两次服务之间没有间隔。
顶替的那一次也算一次完整服务,随后的轮次照常按第 条继续交替。
每项服务从时刻 起等待,直到它开始被服务。设第 项的开始时刻为 。
输入格式
第一行一个整数 。
接下来 行,第 行两个整数 。
输出格式
两行:第一行按被服务的先后输出 个编号,空格分隔;第二行一个整数,表示总等待 。
样例 1
样例
输入
5 1 4 2 1 1 3 2 5 1 2
输出
5 2 3 4 1 22
第 次轮到类别 ,取最短的 分钟项(编号 ,);第 次类别 取 分钟项(编号 ,);接着类别 的 分钟项(编号 ,)、类别 的 分钟项(编号 ,)、类别 的 分钟项(编号 ,),总等待 。
样例 2
输入
2 2 2 2 3
输出
1 2 2
第 次轮到类别 但该类为空,由类别 的 分钟项顶替();第 次轮到类别 ,服务 分钟项();总等待 。
数据范围
;;。答案可能超过 位整数的表示范围,数据保证答案在 位整数范围内。