Pagini recente » Cod sursa (job #190336) | Cod sursa (job #3142895) | Cod sursa (job #856493) | Cod sursa (job #1316887) | Cod sursa (job #1205996)
#include <cstdio>
#include <algorithm>
using namespace std;
#define MAX 100005
struct interval
{
int st, dr;
}v[MAX];
bool comp(interval a, interval b)
{
if(a.dr == b.dr)
return a.st>b.st;
return a.dr > b.dr;
}
int main()
{
freopen("heavymetal.in","r",stdin);
freopen("heavymetal.out","w",stdout);
int n, i, R, sol=0, L;
scanf("%d",&n);
for(i=1; i<=n; i++)
scanf("%d%d",&v[i].st,&v[i].dr);
sort(v+1,v+n+1,comp);
R=v[1].dr; L=v[1].st;
sol = v[1].dr-v[1].st;
for(i=2; i<=n; i++)
{
if(L >= v[i].dr)
{
sol += v[i].dr-v[i].st;
L = v[i].st;
}
}
printf("%d",sol);
return 0;
}