Pagini recente » Cod sursa (job #548051) | Cod sursa (job #1547846) | Profil RSiminica | Istoria paginii runda/simulare-fminostress2017 | Cod sursa (job #129436)
Cod sursa(job #129436)
#include <stdio.h>
#include <stdlib.h>
struct oras {
long x, h;
};
oras v[50002];
int cmp(const void *a,const void *b) {
return ( *(oras *)a ).x - ( *(oras *)b ).x;
}
int main() {
long m, n, i, val, sol = 0, minx, minh;
freopen("orase.in", "r", stdin);
freopen("orase.out", "w", stdout);
scanf("%ld %ld", &m, &n);
for(i = 1;i <= n; ++i) {
scanf("%ld %ld", &v[i].x, &v[i].h);
}
qsort(v + 1, n, sizeof(v[0]), cmp);
minx = 1000000;
minh = 0;
for(i = 1;i <= n; ++i) {
long val = v[i].h +minh + v[i].x - minx;
if(val > sol) {
sol = val;
}
if(v[i].h - minh > v[i].x - minx) {
minx = v[i].x;
minh = v[i].h;
}
}
printf("%ld\n", sol);
}