zl程序教程

您现在的位置是:首页 >  其它

当前栏目

BZOJ1047B Cover Points

Points
2023-09-27 14:28:32 时间

原题链接:http://codeforces.com/contest/1047/problem/B

Cover Points

There are n n n points on the plane, ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯   , ( x n , y n ) (x_1,y_1),(x_2,y_2),\cdots,(x_n,y_n) (x1,y1),(x2,y2),,(xn,yn).

You need to place an isosceles triangle with two sides on the coordinate axis to cover all points (a point is covered if it lies inside the triangle or on the side of the triangle). Calculate the minimum length of the shorter side of the triangle.

Input

First line contains one integer n ( 1 ≤ n ≤ 1 0 5 ) n (1≤n≤10^5) n(1n105).

Each of the next n n n lines contains two integers x i x_i xi and y i ( 1 ≤ x i , y i ≤ 1 0 9 ) y_i (1≤x_i,y_i≤10^9) yi(1xi,yi109).

Output

Print the minimum length of the shorter side of the triangle. It can be proved that it’s always an integer.

Examples
input

3
1 1
1 2
2 1

output

3

input

4
1 1
1 2
2 1
2 2

output

4

Note

Illustration for the first example:

Illustration for the second example:

题解

算算每个点对应的等腰直角三角形的大小,取个 m a x max max即可。

代码
#include<bits/stdc++.h>
using namespace std;
int n,ans;
void in(){scanf("%d",&n);}
void ac()
{
	for(int i=1,a,b;i<=n;++i)
	scanf("%d%d",&a,&b),ans=max(ans,a+b);
	printf("%d",ans);
}
int main(){in();ac();}