#include <bits/stdc++.h>
using namespace std;
struct segment
{
int s,e;
}seg[50050];
bool cmp(segment s1,segment s2)
{
return s1.s<s2.s;
}
int main()
{
int n,i,befed,ans;
while(cin>>n)
{
for(i=1;i<=n;i++)
{
scanf("%lld%lld",&seg[i].s,&seg[i].e);
}
sort(seg+1,seg+n+1,cmp);
befed=-1;
ans=0;
for(i=1;i<=n;i++)
{
if(befed>=seg[i].s)
{
ans=max(ans,min(seg[i].e,befed)-seg[i].s);
}
befed=max(befed,seg[i].e);
}
cout<<ans<<endl;
}
}
51nod 1091 线段的重叠
最新推荐文章于 2018-08-12 15:23:47 发布