Cod sursa(job #772592)

Utilizator misinozzz zzz misino Data 30 iulie 2012 12:15:56
Problema Heavy metal Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include<fstream>
#include<algorithm>
using namespace std;
ifstream f("heavymetal.in");
ofstream g("heavymetal.out");
int n,i,maxi,x,a[100001];
struct interval{
int x,y;
};
interval v[100001];
bool cmp(interval a,interval b)
{if(a.x<b.x)
	return 1;
else
	if(a.x==b.x)
		if(a.y<b.y)
			return 1;
		else
			return 0;
	else
		return 0;
}
int main()
{f>>n;
for(i=1;i<=n;++i)
	f>>v[i].x>>v[i].y;
sort(v+1,v+n+1,cmp);
maxi=v[n].y;
x=1;
for(i=1;i<=maxi;++i)
{a[i]=a[i-1];
for(;v[x].y==i;++x)
	if(a[i]<a[v[x].x]+i-v[x].x)
		a[i]=a[v[x].x]+i-v[x].x;
}
g<<a[maxi]<<'\n';
return 0;
}