就是离散化+循环
#include<bits/stdc++.h>
using namespace std ;
const int maxs = 20010 , TIL = ( 1 << 28 ) ;
long long n , X = - TIL ;
long long Ans ;
struct node{
long long l , r ;
} T[maxs] ;
bool Cmp(node X , node Y){
return X.l < Y.l ;
}
int main(){
cin >> n ;
for(int i = 1 ; i <= n ; i ++ )
cin >> T[i].l >> T[i].r ;
sort(T + 1 , T + n + 1 , Cmp) ;
for(int i = 1 ; i <= n ; i ++ ){
X = max(X , T[i].l ) ;
Ans += T[i].r - X ;
X = T[i].r ;
}printf("%lld\n" , Ans ) ;
return 0 ;
}
求各位大佬帮帮忙!!