A. 有轨电车
每次测试的时间限制
2 秒
每次测试的内存限制
为 256 mb
输入
标准输入
输出
标准输出
线性王国只有一条电车线路。它有n个站点,按照电车的运动顺序从1到n编号。在第 i 个站点一个我乘客下车,而b我乘客进入它。电车在到达第一站之前是空的。此外,当电车到达最后一站时,所有乘客都会离开,使其空无一人。
您的任务是计算有轨电车的最小容量,以便有轨电车内的人数在任何时候都不会超过此容量。请注意,在每个站点,所有离开的乘客在任何进入电车之前离开。
输入
第一条线路包含一个数字n(2 ≤n ≤1000)——电车停靠站的编号。
然后跟随n行,每行包含两个整数一个我和b我 (0 ≤ a我,b我≤ 1000) — 在第 i 站下车的乘客人数,以及在第 i 站进入有轨电车的乘客人数。停靠点按电车运动的顺序从第一站到最后一站给出。
- 在给定站点下车的人数不超过电车到达站点前的总人数。更正式地说,.这尤其意味着 一个1= 0.
- 在最后一站,所有乘客都下车,电车变得空无一人。更正式地说,.
- 没有乘客会在最后一站进入火车。那是bn= 0.
输出
打印一个整数,表示有轨电车的最小可能容量(允许 0)。
例子
输入
复制
4
0 3
2 5
4 2
4 0
输出
复制
6
注意
对于第一个示例,容量 6 就足够了:
- 在第一站,到达之前的电车内的乘客人数为0。然后,3名乘客进入电车,电车内的乘客人数变为3人。
- 在第二站,2名乘客离开电车(1名乘客留在车内)。然后,5名乘客进入电车。现在电车内有6名乘客。
- 在第三站,4名乘客离开电车(2名乘客留在车内)。然后,2名乘客进入电车。现在电车内有4名乘客。
- 最后,电车内所有剩余的乘客在最后一站离开电车。现在电车内没有乘客,这符合限制。
由于电车内的乘客人数永远不会超过6人,因此6人的容量就足够了。此外,有轨电车的容量不可能少于6人。因此,6是正确的答案。
#include<iostream>
using namespace std;
int n,x,y;
int main()
{
cin >> n;
int Max = 0,res=0;
while (n--)
{
cin >> x >> y;
if (res < x)
{
x = res;
}
res -= x;
Max = max(res, Max);
res += y;
Max = max(res, Max);
}
cout << Max << endl;
}