题目
#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
struct node
{
long long l;
long long r;
};
node data[100000];
bool compare(const node&a,const node &b)
{
if(a.l!=b.l)
return a.l<b.l;
return a.r<b.r;
}
int main()
{
long long n;
//scanf("%lld",&n);
cin.sync_with_stdio(false);
cin>>n;
for(int i=1;i<=n;i++)
//scanf("$lld%lld",&data[i].l,&data[i].r);
cin>>data[i].l>>data[i].r;
sort(data+1,data+1+n,compare);
long long last=0;
long long ans=0;
for(long long i=1;i<=n;i++)
if(data[i].r>=last)
{
ans+=data[i].r-max(last,data[i].l)+1;
last=max(last,data[i].r)+1;
}
//printf("%lld",ans);
cout<<ans;
}