Pagini recente » Cod sursa (job #2695431) | Cod sursa (job #1998597) | Cod sursa (job #2769148) | Cod sursa (job #1479678) | Cod sursa (job #1972151)
#include <cstdio>
#include <algorithm>
using namespace std;
struct heavymetal
{
int x , y;
};
heavymetal s[100005];
int cmp (heavymetal a , heavymetal b)
{
if(a.x == b.x)
return a.y < b.y;
return a.x < b.x;
}
int main()
{
freopen("heavymetal.in" , "r" , stdin);
freopen("heavymetal.out" , "w" , stdout);
int n , i , l , r;
long long nr;
scanf("%d" , &n);
for(i = 1 ; i <= n ; i ++)
scanf("%d%d" , &s[i].x , &s[i].y);
sort(s + 1 , s + n + 1 , cmp);
l = s[1].x;
r = s[1].y;
nr = r - l;
for(i = 2 ; i <= n ; i ++)
{
if(r <= s[i].x)
{
nr = nr + s[i].y - s[i].x;
r = s[i].y;
l = s[i].x;
}
else
{
if(r - l < s[i].y - s[i].x)
{
nr = nr - (r - l);
nr = nr + s[i].y - s[i].x;
r = s[i].y;
l = s[i].x;
}
}
}
printf("%lld\n" , nr);
return 0;
}