Pagini recente » Cod sursa (job #721162) | Cod sursa (job #1850127) | Cod sursa (job #69516) | Cod sursa (job #2140212) | Cod sursa (job #245686)
Cod sursa(job #245686)
#include<stdio.h>
#include<algorithm>
using namespace std;
struct sir{unsigned long long int a,b,v;};
unsigned long long int i,j,k,l,m,n,max1;
sir x[100011];
int cmp(sir a,sir b){
return a.a<b.a;}
int main(){
FILE *f=fopen("heavymetal.in","r");
fscanf(f,"%lld",&n);
for(i=1;i<=n;i++)
{fscanf(f,"%lld %lld",&x[i].a,&x[i].b);
x[i].v=x[i].b-x[i].a;
if(x[i].v>max1)
max1=x[i].v;}
fclose(f);
sort(x,x+n+1,cmp);
//quick(0,n);
/* for(i=1;i<n;i++)
for(j=i+1;j<=n;j++)
if(x[i].a>x[j].a)
{aux=x[i];
x[i]=x[j];
x[j]=aux;
} */
unsigned long long int max;
for(i=1;i<=n;i++)
{max=0;
for(j=i-1;j>=1;j--)
if((x[j].b<=x[i].a)&&(x[j].v>max))
max=x[j].v;
x[i].v+=max;
if(x[i].v>max1)
max1=x[i].v;
}
FILE *g=fopen("heavymetal.out","w");
fprintf(g,"%lld",max1);
fclose(g);
return 0;
}