贪心算法(题1)区间选点

输出 2

cpp 复制代码
#include <iostream>
#include<algorithm>

using namespace std;

const int N =100010 ;

int n;
struct Range
{
	int l,r;
	bool operator <(const  Range &W)const
	{
		return r<W.r;
	}
}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);
	
	int res=0, ed=-2e9;
	for (int i=0;i<n;i++)
		if(range[i].l>ed)
	{
		res++;
		ed=range[i].r;
	}
	
	printf("%d\n",res);
	
	return 0;
}

ed 上一个点的下标

相关推荐
学编程的小程1 小时前
LeetCode216
算法·深度优先
leeyayai_xixihah1 小时前
2.21力扣-回溯组合
算法·leetcode·职场和发展
01_1 小时前
力扣hot100——相交,回文链表
算法·leetcode·链表·双指针
萌の鱼1 小时前
leetcode 2826. 将三个组排序
数据结构·c++·算法·leetcode
Buling_01 小时前
算法-哈希表篇08-四数之和
数据结构·算法·散列表
AllowM1 小时前
【LeetCode Hot100】除自身以外数组的乘积|左右乘积列表,Java实现!图解+代码,小白也能秒懂!
java·算法·leetcode
RAN_PAND2 小时前
STL介绍1:vector、pair、string、queue、map
开发语言·c++·算法
fai厅的秃头姐!4 小时前
C语言03
c语言·数据结构·算法
lisanndesu4 小时前
动态规划
算法·动态规划
myprogramc5 小时前
十大排序算法
数据结构·算法·排序算法