#include<stdio.h>
#include<queue>
#include<algorithm>
using namespace std;
struct P{
int x,y;
friend bool operator < (P a,P b){
return a.y<b.y;
}
};
priority_queue<P> que;
int main(){
int n,x,y,i,L=-1,ans=0;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d%d",&x,&y);
while(que.size() && que.top().y>y){
if(que.top().x<L){
que.pop();
continue;
}
L=max(L,que.top().x);
que.pop();
}
if(i-L>ans) ans=i-L;
que.push((P){i,x});
}
printf("%d\n",ans);
}
沒有留言:
張貼留言