问题标题: 酷町堂:2878 60分哪错了???急

0
0
已解决
曹博扬
曹博扬
初级天翼
初级天翼
#include<iostream>
#include<string>
#include<cstdio>
#include<algorithm>
using namespace std;
int n;
long long s;
int st=-0x3f3f3f3f;
struct f{
    int x,y;
}a[105];
bool cmp(f a,f b){
    if(a.x!=b.x)
        return a.x<b.x;
    return a.y<b.y;
}
int main(){
    cin>>n;
    for(int i=1;i<=n;i++)
        cin>>a[i].x>>a[i].y;
    sort(a+1,a+n+1,cmp);
    st=max(a[1].y,st);
    for(int i=2;i<=n;i++){
        if(a[i].x>=st){
            s+=(a[i].x-st);
            st=a[i].y;
        }
    }
    cout<<s;
    return 0;
}

快!!


0
已采纳
汪恺恒
汪恺恒
中级启示者
中级启示者

核心

int end=a[1].e;
        for(int i=1;i<=n;i++){
            if(a[i].s>end){
                ans+=a[i].s-end;
            }
            if(a[i].e>end){
                end=a[i].e;
            }
        }

 

0
王文博
王文博
缔造者之神
缔造者之神

把24行的>=改成>即可AC。

望采纳!

我要回答