/ Vijos / 题库 /

水题大赛(二)

水题大赛(二)

时间限制:1秒  内存限制:256M


【题目描述】

  虽然在接机上耽误了挺长时间,小H为爱好程序的程序员们举行的水题大赛至今为止都非常顺利。大赛吸引了世界各地的程序员。

  然而大赛的重头戏看起来却给小H带来了一些新的安排上的困扰。他的城市有一地方出产一种非常爽口的小吃,据某些识货的程序员说是世界上最美味的食品。因此,所有参会的 \(N\) 个程序员都想要品尝一下这种小吃。由于这个小吃地方很小,小到仅能容纳一个程序员,这很有可能会导致排起长龙。

  小H知道每个程序员 \(i\) 计划到达这小吃地的时间 \(a_i\),以及当轮到他时,他计划品尝这种小吃花费的时间 \(t_i\)。当程序员 \(i\) 开始吃小吃时,她会在离开前花费全部 \(t_i\) 的时间,此时其他到达的程序员需要排队等候。如果这块牧小吃地空出来的时候多个程序员同时在等候,那么资历最深的程序员将会是下一个尝鲜小吃的程序员。在这里,恰好在另一个程序员吃完小吃离开时到达的程序员被认为是“在等待的”。类似地,如果当没有程序员在吃小吃的时候有多个程序员同时到达,那么资历最深的程序员是下一个吃小吃的程序员。

  请帮助小H计算所有程序员中在队伍里等待的时间(\(a_i\) 到这个程序员开始吃小吃之间的时间)的最大值。

【输入格式】

  输入的第一行包含 \(N\)。以下 \(N\) 行按资历顺序给出所有程序员的信息(资历最深的程序员排在最前面)。每行包含一个程序员的 \(a_i\) 和 \(t_i\)。所有的 \(t_i\) 为不超过 \(10^4\) 的正整数,所有 \(a_i\) 为不超过 \(10^9\) 的正整数。

【输出格式】

  输出所有程序员中的最长等待时间。

【输入输出样例1】

 Input

5
25 3
105 30
20 50
10 17
100 10

 Output

10

【输入输出样例解释】

  在这个例子中,我们有 5 个程序员(按输入中的顺序编号为 1..5)。程序员4 最先到达(时间 10),在她吃完之前(时间 27)程序员1 和程序员3 都到达了。由于程序员1 拥有较深的资历,所以她先吃,从她到达开始共计等待了 2 个单位时间。她在时间 30 结束吃小吃,随后程序员3 开始吃小吃,从她到达开始共计等待了 10 单位时间。在一段没有程序员吃小吃的时间过后,程序员5 到达,在她正在吃小吃的时间里程序员2 也到达了,在5 个单位时间之后能够吃到小吃。相比到达时间等待最久的程序员是程序员3。

【数据限制】

  \(100\%\) 的数据满足: \(1≤N≤1000000\)

【来源】

  Mr.he

信息

ID
1286
难度
3
分类
数据结构 | 队列模拟 点击显示
标签
递交数
0
已通过
0
通过率
?
被复制
2
上传者