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;
}

浙公网安备 33010602011771号