不知道为什么会WA了第三个点,来个大佬调一调呀
#include<iostream>
#include<algorithm>
#include<cstring>
#include<vector>
using namespace std;
#define int long long
#define ios ios::sync_with_stdio(false),cin.tie(0),cout.tie(0)
#define MAXN 4000010
#define x first
#define y second
typedef pair<int,int> PII;
PII q[MAXN];
int f[MAXN];
int num[MAXN];
int len[MAXN];
bool cmp(PII a,PII b){
return a.x>b.x;
}
signed main(){
ios;
int n;
cin>>n;
int mx=0;
for(int i=1;i<=n;i++){
int a,b;
cin>>a>>b;
num[a]++;
mx=max(mx,b);
q[i]={a,b};
}
sort(q+1,q+1+n,cmp);
int cnt=1;
for(int i=mx;i>=0;i--){
if(num[i]){
for(int j=1;j<=num[i];j++)
f[i]=max(f[i+1],f[q[cnt].y+1]+q[cnt].y-q[cnt].x+1);
cnt++;
}else f[i]=f[i+1];
}
cout<<f[1];
return 0;
}