Pagini recente » Cod sursa (job #2560339) | Cod sursa (job #145167) | Cod sursa (job #2644251) | Cod sursa (job #2728921) | Cod sursa (job #3264800)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin("orase.in");
ofstream fout("orase.out");
const int N = 50001;
struct oras
{
int d, l;
};
oras v[N];
int distanta(oras x, oras y)
{
return y.d - x.d + y.l + x.l;
}
bool cmp(oras x, oras y)
{
return (x.d < y.d);
}
int main()
{
int m, n;
fin >> m >> n;
for(int i = 0; i < n; i++)
{
fin >> v[i].d >> v[i].l;
}
sort(v, v + n, cmp);
int dist_max = distanta(v[0], v[1]), u = 0;
for(int i = 2; i < n; i++)
{
if(distanta(v[i - 1], v[i]) > distanta(v[u], v[i]))
{
u = i - 1;
}
if(distanta(v[u], v[i]) > dist_max)
{
dist_max = distanta(v[u], v[i]);
}
}
fout << dist_max;
return 0;
}