P5120 [USACO18DEC] Convention II S

本文介绍了USACO竞赛中的一道题目,涉及算法和C++编程。问题核心是解决奶牛在牧场上排队吃草的等待时间问题,通过模拟和优先队列来确定奶牛的吃草顺序及等待时间,最终求出最大等待时间。
摘要由CSDN通过智能技术生成

题目描述

虽然在接机上耽误了挺长时间,Farmer John 为吃草爱好牛们举行的大会至今为止都非常顺利。大会吸引了世界各地的奶牛。

然而大会的重头戏看起来却给 Farmer John 带来了一些新的安排上的困扰。他的农场上的一块非常小的牧草地出产一种据某些识货的奶牛说是世界上最美味的品种的草。因此,所有参会的 N 头奶牛(1≤N≤105)都想要品尝一下这种草。由于这块牧草地小到仅能容纳一头奶牛,这很有可能会导致排起长龙。

Farmer John 知道每头奶牛i计划到达这块特殊的牧草地的时间 ai​,以及当轮到她时,她计划品尝这种草花费的时间 ti​。当奶牛 i 开始吃草时,她会在离开前花费全部 ti​ 的时间,此时其他到达的奶牛需要排队等候。如果这块牧草地空出来的时候多头奶牛同时在等候,那么资历最深的奶牛将会是下一头品尝鲜草的奶牛。在这里,恰好在另一头奶牛吃完草离开时到达的奶牛被认为是“在等待的”。类似地,如果当没有奶牛在吃草的时候有多头奶牛同时到达,那么资历最深的奶牛是下一头吃草的奶牛。

请帮助 FJ 计算所有奶牛中在队伍里等待的时间(ai​ 到这头奶牛开始吃草之间的时间)的最大值。

输入格式

输入的第一行包含 N。以下 N 行按资历顺序给出了 N 头奶牛的信息(资历最深的奶牛排在最前面)。每行包含一头奶牛的 ai​ 和 ti​。所有的 ti​ 为不超过 104104 的正整数,所有 ai​ 为不超过 109109

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值