题目描述
车间里有 台相同的机器,时刻 时全部空闲。共有 份作业,第 份作业在时刻 到达,需要连续加工 分钟;加工一旦开始不可中断。
作业按到达时刻从小到大逐一安排(到达时刻相同按输入顺序):每份作业安排时,把它交给下次有空时刻最早的那台机器(并列时选编号最小的)。设该机器下次有空的时刻为 :若 ,作业从 开始加工;否则从 开始加工。加工完毕后,这台机器的下次有空时刻更新为加工结束时刻。
第 份作业的等待时长 = 实际开始加工时刻 − 。输出全部作业等待时长之和。
输入格式
第一行两个整数 。
接下来 行,第 行两个整数 。
输出格式
一行一个整数,表示全部作业等待时长之和。
样例 1
样例
输入
4 2 0 5 0 3 0 3 1 8
输出
7
两台机器从 起各接一份(等待 );第三份交下次有空在 的那台,等待 ;第四份 到达时最早空的机器下次有空在 ,从 做起,等待 ;合计 。
样例 2
输入
5 2 9 1 0 6 0 2 0 2 5 3
输出
2
按到达顺序排:三份 时刻的依次上两台机器(第三份等到 ,等待 ); 到达的交 时空出的机器, 到达的交 时空出的机器,都不等待;合计 。若按输入顺序安排(先排 那份),答案就不是 。
数据范围
;;。答案可能超过 位整数的表示范围,数据保证答案在 位整数范围内。