打了一个 (Onm) 的代码,再用记忆化搜索就通过了。
#include<bits/stdc++.h>
using namespace std;
int a[200001],b[200001];
int main(){
int m,n,i,j,l,r;
scanf("%d%d",&n,&m);
for(i=0;i<m;i++){
cin>>l>>r;
for(j=l;j<=r;j++){
if(b[j]==-1){j+=a[j];}
else if(a[j]==0){a[j]=1;n--;}
}
a[l]=r-l;
b[l]=-1;
cout<<n<<endl;
}
}