Pagini recente » Cod sursa (job #455249) | Cod sursa (job #2635678) | Cod sursa (job #239191) | Cod sursa (job #3277093) | Cod sursa (job #3264483)
#include <fstream>
#include <algorithm>
using namespace std;
const int N = 50000;
struct oras
{
int d, l;
};
oras v[N];
bool cmp(oras x, oras y)
{
return (x.d < y.d);
}
int distanta(oras x, oras y)
{
return (y.d - x.d + y.l + x.l);
}
int main()
{
ifstream in("orase.in");
ofstream out("orase.out");
int m, n;
in >> m >> n;
for (int i = 0; i < n; i++)
{
in >> 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;
}
dist_max = max(dist_max, distanta(v[u], v[i]));
}
out << dist_max << "\n";
in.close();
out.close();
return 0;
}