【C++】牛客——活动安排

news2024/11/18 23:41:19

✨题目链接:

AB31 活动安排


✨题目描述 

给定𝑛个活动,每个活动安排的时间为[𝑎𝑖,𝑏𝑖)。求最多可以选择多少个活动,满足选择的活动时间两两之间没有重合。

✨输入描述:

第一行输入一个整数        𝑛         1\leq n\leq 2*10^{5},表示可选活动个数。
接下来的𝑛n行,每行输入两个整数        𝑎𝑖,𝑏𝑖      0\leq a_{i} < b_{i} \leq 10^{9},表示第  𝑖  个活动的时间。

✨输出描述:

输出一行一个整数,表示最多可选择的活动数。

✨示例


📍输入

3
1 4
1 3
3 5


📍输出

2



📍说明


✨解题思路

我们可以把时间对存在 pair<int,int>中,把 pair 放在优先级队列中
priority_queue 头文件<queue>
写一个比较 pair 的仿函数,用小根堆比较方式,把最小的放在堆顶
这样我们每次开始时间或结束时间最小的一个


✨代码
 

#include<iostream>
#include<queue>
#include<vector>
using namespace std;
struct cmp{
    bool operator()(const pair<int,int> a,const pair<int,int> b){
        if(a.second > b.second)
            return a.second > b.second;
        else if(a.second == b.second)
            return a.first < b.first;
        return false;
    }
};
int main()
{
    int n,total = 0,time = 0,a,b;
    cin >> n;
    priority_queue<pair<int,int>,vector<pair<int,int>>,cmp> qu;
    while(n--){
        cin >> a >> b;
        qu.push(pair<int,int>(a,b));
    }
    while(!qu.empty()){
        auto cur = qu.top();
        qu.pop();
        if(cur.first >= time){
            total++;
            time = cur.second;
        }
    }
    cout << total;
}


※ 如果文章对你有帮助的话,可以点赞收藏!!谢谢支持

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1710442.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

windows中每日定时执行python脚本,解决问题

由于需要一个每天定时执行的任务&#xff0c;所以需要定时启动&#xff0c;网上看了很多方法&#xff0c;感觉不能在python脚本种写个while true 定时执行&#xff0c;占资源不说还不可靠。 最后考虑通过系统工具定时启动&#xff0c;发现linux中有crontab&#xff0c;windows…

5G工业数采网关的功能及工业应用-天拓四方

随着5G技术的不断发展&#xff0c;其在工业领域的应用日益广泛。5G工业数采网关作为连接工业设备与网络的重要枢纽&#xff0c;具备多种功能&#xff0c;为工业自动化、智能制造和智慧工厂提供了强大的支持。本文将详细解析5G工业数采网关的功能&#xff0c;并探讨其在工业领域…

【微服务】安装docker以及可视化界面

1.配置yum下载源为aliyun源 yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo2.下载docker不加版本号默认为最新版本 yum install -y docker-ce3.启动以及开机自启 #启动docker命令 systemctl start docker #设置开机自启命令…

智慧城管平台:城市管理的未来之路

智慧城管平台&#xff0c;即利用物联网&#xff08;IoT&#xff09;、大数据、云计算、人工智能&#xff08;AI&#xff09;等先进技术&#xff0c;对城市公共空间、设施、事件进行实时监控、智能分析和高效管理的综合平台。其核心在于“智慧”二字&#xff0c;旨在通过技术手段…

mysql手动新建数据库

点击号输入数据库名&#xff0c;端口号&#xff0c;密码&#xff0c;连接到sa数据库新建数据库&#xff0c;语言必须选择utf8mb4新建数据库用户给数据库用户设置对应权限给数据库用户勾选权限

大型央企国企信创化与数字化转型规划实施方案(71页PPT)

方案介绍&#xff1a; 随着全球信息技术的迅猛发展&#xff0c;数字化转型已成为企业提升竞争力、实现可持续发展的必经之路。作为国家经济的重要支柱&#xff0c;大型央企国企在信创化与数字化转型方面承载着重要的责任和使命。本方案旨在通过系统性的规划和实施&#xff0c;…

简单的python程序,把它做成docker镜像

1&#xff0c;python程序准备 在linux主机的/tmp/pythontest路径下创建一个test.py程序文件&#xff0c; 程序内容很简单 就是一句打印 print(hello world, docker)2&#xff0c;再准备一个Dockerfile文件 这个Dockerfile也是放在主机linux中的/tmp/pythontest路径下&#x…

CTF解题技能之MISC基础

杂项介绍 Miscellaneous简称MISC&#xff0c;意思是杂项&#xff0c;混杂的意思。 杂项大致有几种类型&#xff1a; 1.隐写 2.压缩包处理 3.流量分析 4.攻击取证 5.其它 本篇主要介绍杂项基础题目的知识点以及解题思路。 0x00 文件类型识别 杂项题目主要是以文件附件作…

【传知代码】遵循人类指令的高质量图像修复(论文复现)

前言&#xff1a;在数字化时代的浪潮中&#xff0c;图像已成为我们生活中不可或缺的一部分。它们记录着我们的记忆&#xff0c;传递着信息&#xff0c;甚至塑造着我们的认知。然而&#xff0c;正如生活中难以避免的瑕疵&#xff0c;这些数字图像也时常因为各种原因出现损伤、失…

AI推文神器,绘唐ai,文刻创作出品,sdmj二合一虹猫

AI推文神器,绘唐ai,文刻创作出品,sdmj二合一虹猫 https://qvfbz6lhqnd.feishu.cn/wiki/CcaewIWnSiAFgokOwLycwi0Encfhttps://qvfbz6lhqnd.feishu.cn/wiki/CcaewIWnSiAFgokOwLycwi0Encf AI推文神器是一种基于人工智能技术的工具,旨在帮助用户快速生成优质的推文。它通过分…

LeetCode刷题笔记第2769题:找到最大的可达成数字

LeetCode刷题笔记第2769题&#xff1a;找到最大的可达成数字 题目&#xff1a; 想法&#xff1a; 从题目中可以看出&#xff0c;num经过t次增减变为x&#xff0c;x即为可达成数字。因为要求最大的可达成数字&#xff0c;需要满足num一直增加&#xff0c;x一直减少&#xff0c…

论文阅读--CLIP4Clip

CLIP天生适合做retrieve的任务&#xff0c;拿编码好的特征做相似度计算 CLIP做视频的迁移问题在于&#xff0c;一般视频的处理方式是对多个帧做patch&#xff0c;因此得到的图像特征应该是多个帧的融合特征&#xff0c;但CLIP是一个文本特征对应一个图像特征&#xff0c;这时候…

SA316系列音频传输模块-传输距离升级音质不打折

SA316是思为无线研发的一款远距离音频传输模块&#xff0c;音频采样率为48K&#xff0c;传输距离可达200M。为了满足更多用户需求&#xff0c;思为无线在SA316基础上进一步增加传输距离推出SA316F30。相比SA316性能&#xff0c;同样其采用48K采样&#xff0c;-96dBm灵敏度&…

Linux线程:线程控制

目录 一、线程的退出与等待 1.1pthread_join线程等待 1.2线程异常 1.3线程如何退出和结束 ​编辑 二、线程切换 三、线程的优缺点 3.1优点 3.2缺点 3.3线程vs进程 四、多线程的使用及实操 4.1堆空间共享 一、线程的退出与等待 在Linux中线程具有如下的特点&#xf…

个人博客网站开发笔记3

文章目录 前言p4 Front Matterp5 配置文件p6 命令p7 部署新的教学视频部署博客到github找视频教程也是一个技能详细步骤安装主题安装渲染器修改主题创建gitub仓库生成密钥验证密钥是否匹配修改config文件推送到github 前言 主要是安装啥的比较费劲 现在已经比较简单了感觉 之…

动手学深度学习23 LeNet

动手学深度学习23 LeNet 1. LeNet2. 代码3. QA 1. LeNet 两层卷积两层池化两层全连接 卷积就是让每一层shape不断压缩变小【高宽减少】&#xff0c;通道数增多&#xff0c;把特征信息放到不同的通道里面。每一个通道认为是一个模式。然后再做全连接的输入。 2. 代码 impor…

面经记录【面试准备】

面经记录【面试准备】 前言版权面经【Java每日一题】Http协议和RPC协议有什么区别&#xff1f;【Java每日一题】什么是微服务&#xff0c;说一下你对微服务的理解Java面试题&#xff1a;应用的线程数应该设置成多少【Java面试】说一下HashMap的put方法字节二面&#xff1a;MySQ…

打印机里失败的任务删不掉的解决办法 斑马打印机更新电脑驱动和升级打印机固件 提示ribbon out 并黄状态亮+黄供应闪

强删打印任务 WinR services.msc 停止服务 Print spooler C:\Windows\System32\spool\PRINTERS 清空文件夹下所有文件 详细 要删除打印机里失败的任务&#xff0c;可以按照以下步骤操作&#xff1a; 停止打印服务&#xff1a;您需要停止Windows系统中的“Print Spooler”服…

【WEEK13】 【DAY4】Shiro Part 4【English Version】

2024.5.23 Thursday Continued from 【WEEK13】 【DAY3】Shiro Part 3【English Version】 Contents 15.6. Integrate Shiro with MyBatis15.6.1. Modify pom.xml15.6.2. Create application.yaml15.6.3. Connect to the database15.6.4. Modify application.properties15.6.5.…

集合的交集、并集和差集运算

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 集合最常用的操作就是进行交集、并集、差集和对称差集运算。进行交集运算时使用“&”符号&#xff0c;进行并集运算时使用“&#xff5c;”符号&…