Pagini recente » Cod sursa (job #2669215) | Cod sursa (job #2763433) | Cod sursa (job #2713754) | Cod sursa (job #852357) | Cod sursa (job #1438015)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream in ("orase.in");
ofstream out ("orase.out");
const int nmax = 50005;
struct oras{ int d, l; } v[nmax];
inline bool cmp(oras a, oras b)
{
return (a.d < b.d);
}
int main()
{
int n, m, i, sol=-1, dist, lg=-1;
in >> m >> n;
for(i=1; i<=n; i++)
in >> v[i].d >> v[i].l;
sort(v+1, v+n+1, cmp);
dist=v[1].d;
for(i=1; i<=n; i++)
{
if(v[i].d - dist + lg + v[i].l > sol) sol=v[i].d - dist + lg + v[i].l;
if(v[i].l > lg+v[i].d-dist)
{
dist=v[i].d;
lg=v[i].l;
}
}
out << sol;
in.close();
out.close();
return 0;
}