贪心求解区间选点问题(c++实现)

cpp 复制代码
#include<iostream>
#include<algorithm>
using namespace std;
const int N=1e5+10;
struct Range{
    int l,r;
}range[N];

bool cmp(struct Range a,struct Range b){
    return a.r<b.r;
}

int main(){
    ios::sync_with_stdio(false);
    int n;
    cin>>n;
    for(int i=0;i<n;i++){
        int l,r;
        cin>>l>>r;
        range[i]={l,r};
    }
    sort(range,range+n,cmp);
    
    int res=0,ed=-2e9;
    for(int i=0;i<n;i++){
        if(ed<range[i].l){
            res++;
            ed=range[i].r;
        }
    }
    cout<<res;
}
相关推荐
努力写代码的熊大1 天前
c++异常和智能指针
java·开发语言·c++
yumgpkpm1 天前
2026软件:白嫖,开源,外包,招标,晚进场(2025年下半年),数科,AI...中国的企业软件产业出路
大数据·人工智能·hadoop·算法·kafka·开源·cloudera
Yvonne爱编码1 天前
JAVA数据结构 DAY5-LinkedList
java·开发语言·python
John_ToDebug1 天前
WebContent 与 WebView:深入解析浏览器渲染架构的双层设计
c++·chrome·ui
千秋乐。1 天前
C++-string
开发语言·c++
孞㐑¥1 天前
算法—队列+宽搜(bfs)+堆
开发语言·c++·经验分享·笔记·算法
yufuu981 天前
并行算法在STL中的应用
开发语言·c++·算法
zh_xuan1 天前
单青蛙跳台阶
数据结构·算法
Kx_Triumphs1 天前
计算几何-旋转卡壳两种实现方案(兼P1452题解
算法·题解
代码游侠1 天前
学习笔记——Linux字符设备驱动开发
linux·arm开发·驱动开发·单片机·嵌入式硬件·学习·算法