Cod sursa(job #411605)

Utilizator zbarniZajzon Barna zbarni Data 4 martie 2010 23:59:56
Problema Orase Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include<cstdio>
#include<algorithm>
#include<cstdlib>
#include<vector>
#define pb push_back
#define mp make_pair
#define f first
#define s second
using namespace std;
vector <pair <int, int> > a,b;
int maxh,maxp,n,m,maxx,maxx2;
int main()
{
	freopen("orase.in","r",stdin);
	freopen("orase.out","w",stdout);
	scanf("%d%d",&m,&n);
	int i,x,y;
	for (i=0;i<n;++i)
	{
		scanf("%d%d",&x,&y);
		a.pb(mp(x,y));
	}
	sort(a.begin(),a.end());
	maxx=a[0].s+a[1].s+a[1].f-a[0].f;
	int maxj=a[1].s-a[1].f>a[0].s-a[0].f?1:0;
	for (i=2;i<a.size();++i)
	{
		maxx=max(maxx,a[i].s+a[maxj].s+a[i].f-a[maxj].f);
		if (a[i].s-a[i].f>a[maxj].s-a[maxj].f) maxj=i;
	}
	printf("%d\n",maxx);
	return 0;
}