#include <bits/stdc++.h>
using namespace std;
struct node{
int a,b;
}nod[100];
bool flag[100];
bool cmp(node x,node y)
{
return x.b<y.b;
}
int k;
int main() {
memset(flag,0,sizeof (flag));
int ans=0;
cin>>k;
for(int i=1;i<=k;i++)
{
cin>>nod[i].a>>nod[i].b;
}
sort(nod+1,nod+1+k,cmp);
int t=k;
int endtime;
while(t>0) {
ans++;
int i=1;
while(flag[i]==1)
{i++;}
flag[i]=1;
endtime=nod[i].b;
t--;
for(int j=i+1;j<=k;j++)
{
if(flag[j]) continue;
if(nod[j].a>endtime)
{
flag[j]=1;
t--;
endtime=nod[j].b;
}
}
}cout<<ans<<endl;
}
会场安排问题--贪心
最新推荐文章于 2024-06-20 23:59:16 发布