编程题
### 问题描述 有 $n$ 个人到餐厅就餐,他们的编号从 $1$ 到 $n$,餐厅一共有 $m$ 个座位,因此同时就餐的人数不得超过 $m$。现给出 $n$ 个人到达餐厅的时间和进餐所需要的时间,第 $i$ 个人的到达时间点和进餐持续时间分别记为 $a_i$ 和 $b_i$,保证满足 $a_1 < a_2 <...< a_n$。当餐厅中进餐人数已满时,其他到达的人需要在餐厅外等待,一旦餐厅内有人就餐完毕离开从而产生了空座位,在外等待的人就会立刻进入,若有多人等待,则编号小的优先进入。 现在请你给出所有人的等待时间加用餐时间的总和。 ### 输入格式 第一行两个正整数 $n,m$。 在第 $2$ 到 $n+1$ 行中,每行有两个整数,第 $i+1$ 行为 $a_i,b_i$。 ### 输出格式 输出一个整数,表示所有人的等待时间加用餐时间的总和。 ### 样例输入 ```text 3 2 1 5 2 5 3 5 ``` ### 样例输出 ```text 18 ``` ### 说明 $1$ 号没有等待,就餐时间为 $5$;$2$ 号没有等待,就餐时间为 $5$;$3$ 号从时刻 $3$ 等到时刻 $6$,等待时间为 $3$,用餐时间为 $5$。所有人等待时间和用餐时间的总和为 $18$。 ### 评测数据规模 对于 $50$% 的评测数据,$1 \leq n,m \leq 10^4$。 对于 $100$% 的评测数据,$1 \leq n,m \leq 10^5$。 对于 $100$% 的评测数据,$1 \leq a_i,b_i \leq 10^6$。
查看答案
赣ICP备20007335号-2