Pagini recente » Monitorul de evaluare | Cod sursa (job #3194308) | Borderou de evaluare (job #1620003) | Cod sursa (job #3234335) | Cod sursa (job #916996)
Cod sursa(job #916996)
#include<cstdio>
#include<utility>
#include<algorithm>
#define nmax 50010
using namespace std;
int n,m,d,l,i,maxim,dist;
pair<int,int>v[nmax];
int main()
{
freopen("orase.in","r",stdin);
freopen("orase.out","w",stdout);
scanf("%d%d", &m, &n);
for(i=1;i<=n;++i)
{
scanf("%d%d", &d, &l);
v[i]=make_pair(d,l);
}
sort(v+1,v+n+1);
if((v[1].second-v[1].first)>maxim)maxim=v[1].second-v[1].first;
for(i=2;i<=n;++i)
{
if(v[i].first+v[i].second+maxim>dist)dist=v[i].first+v[i].second+maxim;
if(v[i].second-v[i].first>maxim)maxim=v[i].second-v[i].first;
}
printf("%d ", dist);
return 0;
}