Cod sursa(job #751325)

Utilizator GrimpowRadu Andrei Grimpow Data 25 mai 2012 17:26:50
Problema Orase Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <cstdio>
#include <algorithm>
#include <fstream>

#define nmax 50120
using namespace std;

ifstream fin ("orase.in");
struct lol { int L, D; } A[nmax];
int i, n, m, sol, maxL;
inline bool cmp (const lol &a, const lol &b) {
	return a.D < b.D;
} 
int main () {
	//freopen ("orase.in", "r", stdin);
	freopen ("orase.out", "w", stdout);
	fin >> m >> n;
	for (i = 1; i <= n; i++) { 
		fin >> A[i].D >> A[i].L;
	}
	//random_shuffle (A + 1, A + n + 1);
	sort (A + 1, A + n + 1, cmp);
	sol = -1000000000;
	for (i = 1; i <= n; i++) {
		if (sol < A[i].L + A[i].D + maxL) 
			sol = A[i].L + A[i].D + maxL;
		if (maxL < A[i].L - A[i].D) 
			maxL = A[i].L - A[i].D;
	}
	printf ("%d\n", sol);
	return 0;
}