Pagini recente » Cod sursa (job #2082316) | Cod sursa (job #1321748) | Cod sursa (job #89935) | Cod sursa (job #691775) | Cod sursa (job #2157929)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("orase.in");
ofstream g("orase.out");
const int N = 50005, f_mare = 2e9;
int m, n, i, maxim, k;
struct punct {
int d, l;
}v[N];
bool cmp(const punct &a, const punct &b) {
return a.d < b.d;
}
int main() {
f >> m >> n;
for (i = 1; i <= n; i++)
f >> v[i].d >> v[i].l;
maxim = k = -f_mare;
sort(v+1,v+n+1,cmp);
for (i = 1; i <= n; i++) {
if (maxim < v[i].d + v[i].l + k) maxim = v[i].d + v[i].l + k;
if (k < - v[i].d + v[i].l) k = v[i].l - v[i].d;
}
g << maxim;
return 0;
}