《信息学奥赛一本通—提高篇》-活动安排 -题解

本题题意如题面所示;

主要思路就是运用贪心思想,用结构体存信息,然后按开始时间,结束时间排序,从第一个活动开始,不断将下一个时间来进行比较,如果下一个时间的左值比当前的右值要大,直接加1,然后将当前时间替换为下一个;如果下一个时间的右值比当前的右值要小,就将当前的时间替换为下一个,如此重复,直到结束。

下面是代码展示
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn=1e5+10;
const int INF=0x3f3f3f3f;

ll a[maxn];
struct Node{
int l,r;
}node[maxn];
int cmp(Node a,Node b){
if(a.l==b.l) return a.r<b.r;///排序规则
else return a.l<b.l;
}
int main()
{
int n;
cin >> n ;
for(int i=0;i<n;i++) cin >> node[i].l >> node[i].r;
sort(node,node+n,cmp);
int ans=1;
int l=node[0].l,r=node[0].r;
for(int i=1;i<n;i++){
if(node[i].l>=r){
ans++;
l=node[i].l;
r=node[i].r;
}
else if(node[i].r<=r){
l=node[i].l;
r=node[i].r;
}
}
cout << ans << endl;
return 0;
}

全部评论
同学你的代码可以用Markdown编排哦,会更美观的~
点赞 回复 分享
发布于 2019-08-22 14:25

相关推荐

风中翠竹:真的真的真的没有kpi。。。面试官是没有任何kpi的,捞是真的想试试看这个行不行,碰碰运气,或者是面试官比较闲现在,没事捞个人看看。kpi算HR那边,但是只有你入职了,kpi才作数,面试是没有的。
双非有机会进大厂吗
点赞 评论 收藏
分享
点赞 评论 收藏
分享
07-09 19:25
门头沟学院 Java
这是要把每一个投校招的都开盒吗?
26届之耻将大局逆转:裁人的时候一次性追回餐费
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务