51nod1428
链接:点击打开链接
题意:有若干个活动,第i个开始时间和结束时间是[Si,fi),同一个教室安排的活动之间不能交叠,求要安排所有活动,最少需要几个教室?
代码:
#include
#include
#include
#include
#include
#include
#include
using namespace std;
struct node{int num,sign;
};
struct cmp{bool operator()(node a,node b){if(a.num==b.num)return a.sign>b.sign;return a.num>b.num;}
};
node temp;
int main(){ //这个贪心的策略是将开始时间和结束时间放在一起int n,i,st,en,sum,sum_max; //由小到大排序,如果遇到一个开始时间则加1,遇到结束时间就减1while(scanf("%d",&n)!=EOF){ //输出这个过程中的最大值priority_queue,cmp>q;for(i=0;isum_max)sum_max=sum;}printf("%d\n",sum_max);}return 0;
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
