0
点赞
收藏
分享

微信扫一扫

懒汉模式和饿汉模式有什么区别?

夏侯居坤叶叔尘 04-02 14:30 阅读 3

题源

先将每一场比赛以结束时间排一次序,存储当前满足比赛的结束时间,将前面比赛结束时间与后面比赛开始比较,在这相同结束时间比赛中下,如果有比赛的开始时间小于等于记录的结束时间,就可以计数加一~~~

不管了,先看代码:

#include<bits/stdc++.h>
using namespace std;
struct node{
	int s,e;
}p[1000100];
int n;
int ant=0;
int t=0;
bool cmp(node p1,node p2){
	return p1.e<p2.e;
}
int main()
{
	
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>p[i].s>>p[i].e;
	}
	sort(p+1,p+1+n,cmp);//按照结束时间排序一哈 
    for(int i=1;i<=n;i++){
    	if(t<=p[i].s){//前一个比赛结束时间与后一个比赛结束时间相比较 
    		ant++;
    		t=p[i].e;
		}
	}
	cout<<ant;
	return 0;
}
举报

相关推荐

0 条评论