贪心算法(题3)区间分组

cpp 复制代码
#include<iostream>
#include<algorithm>//sort
#include<queue>//小根堆 
using namespace std;
const  int N=100010;
int n;
struct Range
{
	int l,r;
	bool operator < (const Range &W)const
	{
		return l<W.l;
	}
 }range[N];
 
int main()
{
	scanf("%d",&n);
	for (int i=0;i<n;i++)
	{
		int l,r; 
		scanf("%d%d",&l,&r);
		range[i]={l,r};
	}
	sort(range,range+n);
	
	priority_queue<int, vector<int>,greater<int> >heap;//写法 
	for(int i=0;i<n;i++)
	{
		auto r=range[i];
		if(heap.empty()||heap.top()>=r.l) heap.push(r.r);//为空或者不满足创新组 
		else
		{
			int t=heap.top();
			heap.pop();
			heap.push(r.r);
		}	
	 } 
	printf("%d\n",heap.size());
	return 0;
} 
 
相关推荐
稚辉君.MCA_P8_Java3 小时前
Gemini永久会员 Java中的四边形不等式优化
java·后端·算法
稚辉君.MCA_P8_Java3 小时前
通义 插入排序(Insertion Sort)
数据结构·后端·算法·架构·排序算法
无限进步_4 小时前
C语言动态内存的二维抽象:用malloc实现灵活的多维数组
c语言·开发语言·数据结构·git·算法·github·visual studio
Swift社区4 小时前
LeetCode 432 - 全 O(1) 的数据结构
数据结构·算法·leetcode
逝玄4 小时前
关于图灵停机问题不可判定性证明
算法·计算机科学
低客的黑调4 小时前
为你的项目选择一个适合的[垃圾收集器]
java·jvm·算法
芬加达5 小时前
leetcode34
java·数据结构·算法
资深web全栈开发5 小时前
LeetCode 1015. 可被 K 整除的最小整数 - 数学推导与鸽巢原理
算法·leetcode·职场和发展
dragoooon345 小时前
[优选算法专题八.分治-归并 ——NO.46~48 归并排序 、数组中的逆序对、计算右侧小于当前元素的个数]
数据结构·算法·排序算法·分治