会场安排问题-贪心思想
#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
struct meet{
int s;
int e;
};
bool cmp(meet a,meet b){
return a.e<=b.e;
}
int n;
bool flag[1000];
int index1=0;
void anpai(meet a[]){
int endtmp=0;
//int cnt_1=0
for(int i=1;i<=n;i++){
if(flag[i] == false){
if(a[i].s>=endtmp){
endtmp=a[i].e;
flag[i]=true;
//cnt_1++;
index1++;
}
}
}
//cout<<"-"<<cnt_1<<"-"<<endl;
}
int main(){
cin>>n;
meet a[1000];
memset(a,0,sizeof(a));
memset(flag,false,sizeof(flag));
for(int i=1;i<=5;i++){
cin>>a[i].s>>a[i].e;
}
sort(a+1,a+1+n,cmp);
int cnt=0;
while(index1 != n){
anpai(a);
cnt++;
}
cout<<cnt<<endl;
return 0;
}