P1803 凌乱的yyy / 线段覆盖

原题链接

题解

对于线段A,选与线段A有交叉,且结束时间比A晚的线段一定不比选线段A更优

code

#include<bits/stdc++.h>
using namespace std;

struct node
{
    int l,r;
}seg[1000005];

bool cmp(node a,node b)
{
    return a.r<b.r;
}
int main()
{
    int n;

    cin>>n;

    for(int i=1;i<=n;i++)
    {
        cin>>seg[i].l>>seg[i].r;
    }

    sort(seg+1,seg+1+n,cmp);

    int ends=0,ans=0;
    for(int i=1;i<=n;i++)
    {
        if(seg[i].l>=ends)
        {
            ends=seg[i].r;
            ans++;
        }
    }

    cout<<ans<<endl;
    return 0;
}
posted @ 2024-06-26 11:11  纯粹的  阅读(27)  评论(0)    收藏  举报