#include<bits/stdc++.h>
using namespace std;
struct node
{
int lt,rt;
}nd;
int i,j,n;
unsigned sumn;
vector<node>v;
int main()
{
scanf("%d",&n);
for(i=1;i<=n;++i)
{
scanf("%d%d",&nd.lt,&nd.rt);
v.push_back(nd);
}
for(i=0;i<=v.size()-1;++i)
{
if(v[i].lt==v[i].rt)
{
v.erase(v.begin()+i--);
continue;
}
for(j=i+1;j<=v.size()-1;++j)
{
if(v[i].lt<=v[j].lt&&v[j].lt<=v[i].rt||v[j].lt<=v[i].lt&&v[i].lt<=v[j].rt)
{
v[i].lt=min(v[i].lt,v[j].lt);
v[i].rt=max(v[i].rt,v[j].rt);
v.erase(v.begin()+j--);
}
}
}
for(i=0;i<=v.size()-1;++i)
sumn+=1ll*v[i].rt-1ll*v[i].lt;
printf("%u",sumn);
return 0;
}
结果,悬赏关注