Pagini recente » Cod sursa (job #1086308) | Cod sursa (job #2663326) | Cod sursa (job #2180565) | Cod sursa (job #1631217) | Cod sursa (job #420451)
Cod sursa(job #420451)
#include <iostream>
using namespace std;
int N, M;
struct Nr {
int d, l;
} P[50001];
int cmp(Nr a, Nr b) {
if(a.d!=b.d) { return a.d<b.d; }
return a.l<b.l;
}
int main() {
FILE *f1=fopen("orase.in", "r"), *f2=fopen("orase.out", "w");
int i, j, p, q, sol=-1;
fscanf(f1, "%d%d", &M, &N);
for(i=1; i<=N; i++) {
fscanf(f1, "%d%d", &P[i].d, &P[i].l);
}
sort(P+1, P+N+1, cmp);
p=P[1].l-P[1].d;
for(i=2; i<=N; i++) {
sol=max(sol, P[i].l+P[i].d+p);
p=max(p, P[i].l-P[i].d);
}
fprintf(f2, "%d\n", sol);
fclose(f1); fclose(f2);
return 0;
}