Pagini recente » Cod sursa (job #3005037) | Cod sursa (job #2281778) | Cod sursa (job #1150293) | Cod sursa (job #2442515) | Cod sursa (job #2812708)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin("orase.in");
ofstream fout("orase.out");
const int MAX=5e4+5;
struct st
{
int d,l;
} v[MAX];
bool cmp(st a, st b)
{
return a.d<b.d;
}
int D(st a, st b)
{
return b.l+a.l+b.d-a.d;
}
int n,m,j,d,dmax;
int main()
{
fin >> m >> n;
for(int i=1;i<=n;i++)
fin >> v[i].d >> v[i].l;
sort(v+1,v+n+1,cmp);
dmax=v[2].l+v[1].l+v[2].d-v[1].d;
j=1;
for(int i=3;i<=n;i++)
{
if(D(v[i-1],v[i])>D(v[j],v[i]))
j=i-1;
d=D(v[j],v[i]);
if(d>dmax)
dmax=d;
}
fout << dmax;
return 0;
}