【晴问算法】入门篇—贪心算法—区间不相交问题

题目描述


给定n个开区间,从中选择尽可能多的开区间,使得这些开区间两两没有交集。

输入描述

输出描述


输出一个整数,表示最多选择的开区间个数。

样例1
输入


4
1 3
2 4
3 5
6 7


输出


3


解释


最多选择(1,3)、(3,5)、(6,7)三个区间,它们互相没有交集。

#include<bits/stdc++.h>
using namespace std;
const int MAXN = 100;
int a[MAXN];
struct qj{
	int x;//左端点
	int y;//右端点
};//定义区间结构体,依次输入区间的左右端点
bool cmp(qj a, qj b){//qj类型的a和b
	return a.y < b.y;//返回右端点较小的区间
}
int main(){
	struct qj a[MAXN];
	int n;
	cin >> n;
	for(int i=0;i<n;i++){
		scanf("%d %d",&a[i].x,&a[i].y);
	}
	sort(a,a+n,cmp);//按照右端点小的顺序
	int last = a[0].y;//第一个区间的左端点
	int count = 1;//第一个区间一定能被选中
	for(int i=1;i<n;i++){//从第二个区间开始判断
		if(a[i].x >= last){//如果当前区间的左端点大于等于上一个区间的右端点
			count++;//则不会交集,个数加1
			last = a[i].y;//更新当前的右端点
		}
	}
	printf("%d",count);
	
	
	
	return 0;
}

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【IEDM2023】背势垒电荷运动诱导GaN HEMT随时间的非稳态击穿

分享一篇2023年IEDM上GaN HEMT&#xff08;高电子迁移率晶体管&#xff09;的研究论文&#xff0c;标题为“Charge Movement in Back Barrier Induced Time-Dependent On-State Breakdown of GaN HEMT”。论文讨论了在GaN HEMT中&#xff0c;由于背栅&#xff08;Back Barrier&…

【数据库】数据库基本知识

1.数据库的四个基本概念 1.1 数据&#xff1a;描述事务的符号记录 1.2 数据库&#xff1a;概括的说&#xff0c;数据库数据具有永久存储、有组织的、可共享的大量数据的集合&#xff0c;数据库中的数据按一定的数据模型组织、描述和储存&#xff0c;具有较小的冗余度、较高的…

ubuntu16.04上pycharm卡住关不了

在使用pycharm的过程中&#xff0c;突然卡住&#xff0c;黑屏&#xff0c;手动界面关闭失败&#xff0c;可尝试以下方法解决。 输入以下命令&#xff0c;查看所有和pycharm有关的进程 ps -ef | grep pycharm得到以下结果 根据相应的PID&#xff0c;输入以下命令&#xff0c;强…

Java基础入门day16

day16 回顾二分查找 思路&#xff1a; 对于一个已经排好序的数组&#xff0c;在该数组中查找指定的元素&#xff0c;将要查找的元素与排好序之后的数组中的中间数值进行比对 如果一致&#xff0c;则直接返回&#xff0c;一次性可以得到要查找元素的下标 如果要查找的元素比中间…

Perl下载器:一步步教你抓取Amazon网站数据

引言&#xff1a;掌握数据&#xff0c;掌握未来 在这个信息爆炸的时代&#xff0c;数据就是新石油。但如何有效地获取和利用这些数据呢&#xff1f;爬虫技术是关键。今天&#xff0c;我们将深入探讨如何使用Perl语言编写一个下载器&#xff0c;以Amazon网站为例&#xff0c;教…

.Net使用ElasticSearch

文章目录 前言主体内容一.Kibana中ElasticSearch的基础操作1.GET&#xff08;查询&#xff09;1.POST&#xff08;新增&#xff09;1.PUT&#xff08;修改&#xff09;1.DELET&#xff08;删除&#xff09; 二.在.Net中&#xff0c;对ElasticSearch进行基础操作1.DotNet连接Ela…

【爬虫逆向】Python逆向采集猫眼电影票房数据

进行数据抓包&#xff0c;因为这个网站有数据加密 !pip install jsonpathCollecting jsonpathDownloading jsonpath-0.82.2.tar.gz (10 kB)Preparing metadata (setup.py) ... done Building wheels for collected packages: jsonpathBuilding wheel for jsonpath (setup.py) .…

Acwing-基础算法课笔记之动态规划(区间DP)

Acwing-基础算法课笔记之动态规划&#xff08;区间DP&#xff09; 一、石子合并1、定义2、闫氏DP分析法3、模拟过程4、代码示例 一、石子合并 1、定义 设有 N N N堆石子排成一排&#xff0c;其编号为 1 1 1&#xff0c; 2 2 2&#xff0c; 3 3 3&#xff0c;…&#xff0c; N…

SAP前台处理:销售业务集成<VA03/VL03N/VLPOD/VF03) 02/02

接上一章节&#xff1a; 下方&#xff1a;按照行项目显示&#xff1a;物料信息、数量信息、地点信息&#xff08;工厂、移动类型、库位&#xff09;、批次信息、科目分配信息&#xff08;科目分配对象&#xff09; 点击FI凭证&#xff0c;跳转到成本结转凭证或发出商品凭证界…

微信小程序的页面制作---常用组件及其属性

微信小程序里的组件就是html里的标签&#xff0c;但其组件都自带UI风格和特定的功能效果 一、常用组件 view&#xff08;视图容器&#xff09;、text&#xff08;文本&#xff09;、button&#xff08;按钮&#xff09;、image&#xff08;图片&#xff09;、form&#xff08…

大数据 - Spark系列《十三》- spark调度流程(运行过程)

Spark系列文章&#xff1a; 大数据 - Spark系列《一》- 从Hadoop到Spark&#xff1a;大数据计算引擎的演进-CSDN博客 大数据 - Spark系列《二》- 关于Spark在Idea中的一些常用配置-CSDN博客 大数据 - Spark系列《三》- 加载各种数据源创建RDD-CSDN博客 大数据 - Spark系列《…

完美解决 RabbitMQ可视化界面Overview不显示折线图和队列不显示Messages

问题场景&#xff1a; 今天使用docker部署了一个RabbitMQ&#xff0c;浏览器打开15672可视化页面发送消息后不显示Overview中的折线图&#xff0c;还有队列中的Messages&#xff0c;因为我要看队列中的消息数量。 解决方案&#xff1a; 进入容器内部 docker exec -it 容器id…

走进Hyperledger Fabric:企业区块链技术的简明介绍

该文章Github地址&#xff1a;https://github.com/AntonyCheng/blockchain-notes 在此介绍一下作者开源的SpringBoot项目初始化模板&#xff08;Github仓库地址&#xff1a;https://github.com/AntonyCheng/spring-boot-init-template & CSDN文章地址&#xff1a;https://…

GPT-SoVITS语音合成服务器部署(远程访问)

GPT-SoVITS 是一个开源项目&#xff0c;它使用大约一分钟的语音数据便可以训练出一个优秀的TTS模型。 项目的核心技术是 Zero-shot TTS 和 Few-shot TTS。 Zero-shot TTS 可以让用户输入5秒钟的语音样本并立即体验转换后的语音&#xff0c;而 Few-shot TTS 则可以通过使用仅一…

静默安装OGG21.3微服务版本FOR ORACLE版本

静默安装OGG21.3微服务版本FOR ORACLE版本 silent install ogg21.3 for oracle 某度找来找去都没有找到一份可靠的静默安装OGG21.3微服务版本的案例&#xff0c;特别难受&#xff0c;为此将自己静默安装的步骤一步步贴出来分享给大家&#xff0c;请指点&#xff0c;谢谢。 至…

【赠书第20期】AI绘画与修图实战:Photoshop+Firefly从入门到精通

文章目录 前言 1 入门篇&#xff1a;初识Photoshop与Firefly 2 进阶篇&#xff1a;掌握Photoshop与Firefly的核心技巧 3 实战篇&#xff1a;运用Photoshop与Firefly进行创作 4 精通篇&#xff1a;提升创作水平&#xff0c;拓展应用领域 5 结语 6 推荐图书 7 粉丝福利 前…

解决谷歌浏览器最新chrome94版本CORS跨域问题

项目场景&#xff1a; 谷歌浏览器升级到chrome94版本出现CORS跨域问题 问题描述 解决谷歌浏览器最新chrome94版本CORS跨域问题。 CORS跨域问题&#xff1a; 升级谷歌浏览器最新chrome94版本后&#xff0c;提示Access to XMLHttpRequest at ‘http://localhost:xxxx/api’ fro…

【机器学习系列】M3DM工业缺陷检测部署与训练

一.基础资料 1.Git 地址 地址 2.issues issues 3.参考 参考 csdn 二.服务器信息 1.GPU 服务器 GPU 服务器自带 CUDA 安装(前提是需要勾选上)CUDA 需要选择大于 11.3 的版本登录服务器后会自动安装 GPU 驱动 2.CUDA 安装 GPU 服务器自带 CUDA CUDA 版本查看 3.登录信…

安装Pinia 插件 pinia-plugin-persist 添加 persist 属性时报红线解决方法

1&#xff0c;使用全局状态管理pinia 添加persist包红线&#xff0c; 网上很多都没有得到实际的解决方法。 2&#xff0c;接下来给大家梳理一下正确的解决方法&#xff1b; 首先卸载pinia-plugin-persist pnpm uninstall pinia-plugin-persist 安装pinia-plugin-persistedsta…

Git——修改历史记录详解

目录 Git1、修改历史信息1.1、启动互动模式1.2、修改Commit信息的影响1.3、取消Rebase 2、多个Commit合并位一个Commit3、一个Commit拆解成多个Commit4、在某些Commit之间插入新的Commit5、删除Commit6、调整Commit的顺序7、Revert指令7.1、取消Commit7.2、取消Revert1、再开一…
最新文章