Pagini recente » Cod sursa (job #1461246) | Cod sursa (job #161524) | Cod sursa (job #1625882) | Cod sursa (job #1226976) | Cod sursa (job #138880)
Cod sursa(job #138880)
#include<stdio.h>
#define NMAX 100001
long i,s,in,sf,a,j,k,l,n,m,q;
struct kkt
{
long X,Y;
};
kkt x[NMAX];
int main()
{
freopen("heavymetal.in","r",stdin);
freopen("heavymetal.out","w",stdout);
scanf("%ld",&n);
for (i=1;i<=n;i++)
scanf("%ld%ld",&x[i].X,&x[i].Y);
a=1;
while (a)
{
a=0;
for (i=1;i<n;i++)
if (x[i].X>x[i+1].X)
{
a=x[i].X;
x[i].X=x[i+1].X;
x[i+1].X=a;
a=x[i].Y;
x[i].Y=x[i+1].Y;
x[i+1].Y=a;
a=1;
}
}
s=x[1].Y-x[1].X;
in=x[1].X;
sf=x[1].Y;
for (i=2;i<=n;i++)
{
if (x[i].X>=sf)
{
s+=x[i].Y-x[i].X;
sf=x[i].Y;
}
else
if (x[i].Y-x[i].X>x[i-1].Y-x[i-1].X)
{
sf=x[i].Y;
s-=x[i-1].Y-x[i-1].X;
s+=x[i].Y-x[i].X;
}
}
printf("%ld\n",s);
return 0;
}