#include<bits/stdc++.h>
using namespace std;
vector<pair<int,int> > v;
int main(){
int n,start,end,sum=0;
cin>>n;
for(int i=1;i<=n;i++){
cin>>start>>end;
v.push_back({start,end});
}
for(int i=0;i<v.size();i++){
if(v[i].first<=v[i+1].first && v[i].second>=v[i+1].second)
v.erase(v.begin()+i,v.begin()+i+1);
if(v[i].first>v[i+1].first && v[i].second>v[i+1].second){
v[i].first=v[i+1].first;
v.erase(v.begin()+i+1,v.begin()+i+2);
}
}
for(int i=0;i<v.size();i++){
sum+=v[i].second-v[i].first;
}
cout<<sum;
return 0;
}
问题请看题目