Cod sursa(job #68137)

Utilizator wefgefAndrei Grigorean wefgef Data 26 iunie 2007 17:50:55
Problema Orase Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <cstdio>
#include <algorithm>

using namespace std;

#define x first
#define y second

#define Nmax 50005

int n, m;
pair<int, int> v[Nmax];

void readdata()
{
	freopen("orase.in", "r", stdin);
	freopen("orase.out", "w", stdout);
	
	scanf("%d %d", &m, &n);
	for (int i = 1; i <= n; ++i)
		scanf("%d %d", &v[i].x, &v[i].y);
}

void solve()
{
	int i, best, sol = 0;
	
	sort(v+1, v+n+1);
	
	best = v[1].y;
	for (i = 2; i <= n; ++i)
	{
		sol = max(sol, v[i].y + best + v[i].x-v[i-1].x);
		best = max(v[i].y, best+v[i].x-v[i-1].x);
	}
	
	printf("%d\n", sol);
}

int main()
{
	readdata();
	solve();
	return 0;
}