问题标题: 酷町堂:2777 区间合并

0
0
已解决
杜承俊
杜承俊
资深守护
资深守护

#include<bits/stdc++.h>
using namespace std;
int n,ans=0,t;
struct P{
    int l,r;
}a[110];
bool cmp(P u,P v){
    if(u.r!=v.r)return u.r<v.r;
    return u.l<v.l;
}
int main(){
    //freopen(".in","r",stdin);
    //freopen(".out","w",stdout);
    cin>>n;
    for(int i=1;i<=n;i++)
        cin>>a[i].l>>a[i].r;
    sort(a+1,a+1+n,cmp);
    for(int i=1;i<=n;i++){
        if(a[i].l>t)ans++;
        t=max(t,a[i].r);
    }
    cout<<ans;
    return 0;
}
00


0
已采纳
李显晨
李显晨
中级启示者
中级启示者

判断应该这样

if (a[i].l > tmp){
            tmp = a[i].r;
            ans++;
        }
        else tmp=max(tmp,a[i].r);

排序直接写return x.l < y.l;

0
杜承俊
杜承俊
资深守护
资深守护

ding

ding

ding

ding

ding

ding

ding

ding

我要回答