CE求助
查看原帖
CE求助
748426
zyc1219楼主2023/1/10 14:55
#include <bits/stdc++.h>
using namespace std;
long long n,begin,end,ans1,ans2;
struct w{
    long long start,finish;
}m[5005];
inline bool px(w a, w b){
    return a.start<b.start;
}
inline void answer(){
    for(int i=2;i<=n;++i){
        if(m[i].start<=end)
            end=max(end,m[i].finish);
        else{
            ans1=max(ans1,end-begin);
            ans2=max(ans2,m[i].start-end);
            begin=m[i].start;
        	end=m[i].finish;
        }
    }
}
int main(){
    scanf("%d",&n);
    for(int i=1;i<=n;++i)
        scanf("%d%d",&m[i].start,&m[i].finish);
    sort(m+1,m+1+n,px);
    begin=m[1].start,end=m[1].finish;
    answer();
    ans1=max(ans1,end-begin);
    printf("%d %d",ans1,ans2);
    return 0;
}
2023/1/10 14:55
加载中...