最小区间覆盖-贪心-牛客小白月赛60A-华华听月月唱歌

全国各城市POI数据2012年-2023-最新整理zip 全国各城市POI数据2012年-2023-最新整理zip 新增2024全国POI矢量数据 数据时间2024年5月 shp格式 36万个数据 数据来源OpenStreetMap 一、全国范围2012、2014、2016、2018、2020、2022年和2023年常用POI数据集 数据是全国范围2012、2014、2016、2018、2020、2022年、2023年常用POI数据集,主要包括:包括餐饮、风景名胜、公共设施、公司企业、停车场、收费站、厕所、服务器等等。 【资源信息】 中文名称: 全国范围POI数据集 显示时间: 2012、2014、2016、2018、2020、2022、2023年 数据来源: 高德地图、百度地图、网络搜集等 数据格式:矢量点数据(shp) 数据坐标:WGS_1984 二、全国各城市POI兴趣点数据 数据年份:2012-2023年 数据范围:每年样本量6000w-9000w POI类别:150+POI兴趣点类别 原始来源:2012-2017年来源于百度,2018-2022来源于高德 数据指标:POI名称,经度,纬度,省份,城市,区域(各年指标有所差别) 立即下载

思路:
详见紫书P233,先预处理,将那些被包含在其他区间的区间筛选出去。然后贪心。

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<vector>
#include<set>
#include<stack>
#include<queue>
#include<map>
#include<cstring>
#include<string>
#include<cmath>

using namespace std;

typedef long long LL;

#define INF 0x3f3f3f3f
#define PI acos(-1.0)
#define pii pair<int,int>
#define all(x) x.begin(),x.end()
#define mem(a,b) memset(a,b,sizeof(a))
#define per(i,a,b) for(int i = a;i <= b;++i)
#define rep(i,a,b) for(int i = a;i >= b;--i)
const int maxn = 1e5;
int n = 0,m = 0; 
struct node{
	int l,r;
};
node a[maxn+10],b[maxn+10];
bool cmp(node x,node y){
	return x.l == y.l ? (x.r > y.r) : (x.l < y.l);
}
int size = 0;

int main(){
	//std::ios::sync_with_stdio(false);
	while(~scanf("%d %d",&n,&m)){
		per(i,1,m){
			scanf("%d %d",&a[i].l,&a[i].r);
		}
		sort(a+1,a+1+m,cmp);
		if(a[1].l != 1){
			printf("-1\n");
			continue;
		}
		size = 0;
		int rm = a[1].r;
		b[++size].l = a[1].l;b[size].r = a[1].r;
		per(i,2,m){
			if(a[i].l > rm+1){//[1,2],[3,4]可以组成完整的[1,4] 
				printf("-1\n");
				return 0;
			}else{
				if(a[i].r > rm){
					b[++size].l = a[i].l;b[size].r = a[i].r;
					rm = a[i].r;
				}
			}
		}
		int ans = 1;
		rm = b[1].r+1;
		per(i,2,size){
			int maxv = 0;
			if(rm == n+1){
				break;
			}
			while(i <= size && b[i].l <= rm){//注意边界条件 
				maxv = max(maxv,b[i].r+1);
				++i;
			}
			rm = maxv;
			if(i == size + 1){
				if(rm != (n+1)){
					printf("-1\n");
					return 0;
				}
			}
			ans += 1;
			--i;
		}
		printf("%d\n",ans);
	}
	
	return 0;
}
智能驾驶智慧交通行业智算中心(AIDC)建设规划方案.pptx 立即下载

相关推荐

【专利信息处理】基于Java+Vue的专利文本主题标引与新颖性检索系统设计 项目介绍 基于java+vue的专利文本主题标引与新颖性检索系统设计与实现(含模型描述及部分示例代码)

构建可演进的专利知识服务平台,为后续接入大模型、知识图谱等高级功能奠定基础。; 阅读建议:此资源以实际项目为导向,包含模型设计与部分核心代码示例(如文本清洗、术语归一化、TF-IDF、TextRank、BM25、余弦相似度等),建议读者结合代码理解算法逻辑,并尝试在本地环境中搭建原型系统进行调试内容概要:与扩展,深入本文介绍了一个掌握专利信息处理的技术基于Java与Vue的链路与业务专利文本主题标边界。引与新颖性检索系统的设计与实现。系统通过整合自然语言处理、信息检索与排序融合技术,实现了对海量专利文本的自动化处理,涵盖数据采集、文本清洗、主题提取、技术标签生成、相似专利检索及新颖性辅助分析等功能。核心技术包括字段分层处理、中文分词优化、领域术语归一化、TF-IDF与TextRank关键词提取、BM25与余弦相似度排序、以及权利要求特征覆盖度计算等。系统采用Spring Boot构建后端服务,结合Elasticsearch实现高效全文检索,Redis缓存热点数据,Vue构建可视化前端界面,支持多维度筛选与结果展示。项目强调“辅助而非替代”专业判断,通过闭环反馈机制持续优化术语库与模型效果,致力于将专利文献转化为可计算、可检索、可解释的技术知识资产。; 适合人群:具备Java和Vue开发基础,熟悉Spring Boot、Elasticsearch、MyBatis Plus等技术栈,从事知识产权信息化、NLP应用开发或科技情报系统研发的工程师与研究人员,尤其适合1-5年工作经验的技术人员;; 使用场景及目标:①用于企业研发立项前的技术查新与专利风险排查;②支持知识产权服务机构开展专利布局分析与无效检索;③辅助高校与科研机构进行技术趋势识别与竞争对手监测;④构建可演进的专利知识服务平台,集成大语言模型与知识图谱实现智能升级; 阅读建议:此资源包含完整模型架构与核心代码示例,建议结合实际项目实践,重点理解文本预处理流程、多阶段检索策略与新颖性辅助判断逻辑,并可根据行业需求扩展术语库与算法模块。

牛客小白月赛60

牛客小白月赛60

m0_52806260的博客 1559

用C#实现面向对象编程之继承和多态概念的示例程序

这是文章《面向对象编程之继承和多态》的配套示例程序。在学习面向对象编程时都学习到三个概念:封装、继承、多态。封装已经讲解过,可以翻一下本博客的发表记录。所谓的继承,就是父类已经实现的属性、方法等,子类也跟着有,无需重复实现。所谓的多态,就是父类只定义的属性、方法等的名称、数据类型、参数,具体由子类实现。

牛客392A 经典区间覆盖

链接:https://ac.nowcoder.com/acm/contest/392/A来源:牛客网 题目描述 月月唱歌超级好听的说!华华听说月月在某个网站发布了自己唱的歌曲,于是把完整的歌曲下载到了U盘里。然而华华不小心把U盘摔了一下,里面的文件摔碎了。月月的歌曲可以看成由1到N的正整数依次排列构成的序列,它现在变成了若干个区间,这些区间可能互相重叠。华华想把它修复为完整的歌...

weixin_30457465的博客 177

douyin-favorite-MyLike-2.0.3.zip

douyin-favorite-MyLike-2.0.3.zip

英文打字练习 可自定义练习范围

英文打字练习 可自定义练习范围 给初学者熟悉键位用

刷题心得

最近开始找工作,所以在拼命刷题学习增强编程的能力(本人使用C++面向对象的编程语言),但是有时候还是会暴力破解一些题目,所以程序运行的时间和内存消耗都比较大,看了别人的解答之后感觉,哇,原来这个题目还能这么解决....献上双膝。话不多说,举个例子:提取不重复的整数题目描述输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。输入描述:输入一个int型整数输出描述:按照从右向...

qq_27767337的博客 694

非凸非光滑优化的惯性块镜像下降方法(Matlab代码实现)

内容概要:本文详细介绍了“非凸非光滑优化的惯性块镜像下降方法”的Matlab代码实现,重点针对三相PWM控制等复杂工程场景中的非凸非光滑优化问题,提出一种高效的迭代求解算法。文章系统阐述了该方法的数学建模原理、收敛性分析及优化机制,并提供了完整的Matlab仿真代码与多个典型应用实例(如储能系统管理、电力电子控制等),帮助读者深入理解算法在实际科研与工程中的部署方式。内容兼具理论深度与实践价值,突出展示了该方法在电力系统、信号处理和数据融合等领域的广泛应用潜力。; 适合人群:具备扎实的数学优化理论基础和良好Matlab编程能力,从事控制工程、电力电子、信号处理或运筹优化等相关方向的研究生、科研人员及工程师(建议具有1-3年以上相关经验);特别适合致力于非凸优化、智能算法设计及工业级仿真验证的技术人员。; 使用场景及目标:① 掌握非凸非光滑优化问题的先进求解策略,提升对复杂目标函数与约束条件的处理能力;② 利用所提供的Matlab代码快速实现惯性块镜像下降算法,应用于电力系统优化控制、路径规划、信号恢复等科研项目中;③ 借助文中的仿真案例进行算法性能测试、参数调优与二次开发,推动高水平论文撰写与技术创新。; 阅读建议:此资源以算法实现为核心,建议读者结合理论推导与代码实践同步学习,优先按照文档推荐目录顺序逐步深入,确保掌握前置知识体系;同时关注公众号“荔枝科研社”获取完整资源包、配套资料及更新内容,全面提升学习完整性与科研应用效能。

牛客小白月赛60(A~C)题解

​ 原题地址:牛客小白月赛60_ACM/NOI/CSP/CCPC/ICPC算法编程高难度练习赛_牛客竞赛OJ 题目A:小竹与妈妈 题意:输出(x-b)/a即可,没什么好说 题目B:走丢的小竹 题意: 每次询问输出有多少个出口能够逃离,因为一个劫匪只能在一个房间等着,所以记录人质所连接的每个房间的a[i],如果劫匪所在的房间号为k,那么答案就为n - a[k]即可题目C:小竹关禁闭 题意: 找出绳子的制作长度最大值,有n个绳子,如果选下当前的绳子,则其右边的k个绳子都不能再选, ​

weixin_63927680的博客 935

【多无人机追捕-逃逸】平面中多追捕者保证实现的分散式追捕-逃逸策略研究(Matlab代码实现)

内容概要:本文针对平面中多无人机追捕者与逃逸者之间的博弈问题,提出了一种保证实现的分散式追捕策略。该策略基于相对几何关系与速度信息,实现了多追捕者在无中央协调机制下的自主决策与协同围捕,确保对逃逸者的有效捕获。研究内容涵盖追捕-逃逸系统的数学建模、分散式控制律的设计、收敛性理论证明,并通过Matlab仿真验证了算法在多种场景下的有效性、鲁棒性与可扩展性,展示了追捕者如何动态调整轨迹以逐步缩小包围圈并最终完成捕获。; 适合人群:具备控制理论、机器人学、自动化或计算机科学背景,熟悉Matlab编程,从事多智能体系统、无人机协同控制、博弈论或自主系统研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①应用于多无人机系统在安防监控、目标围捕、应急响应等任务中的协同路径规划与自主决策;②为多智能体协同控制、分布式算法设计与博弈策略研究提供理论支撑与可复现的代码实例,支持进一步拓展至三维空间、多逃逸者或异构无人机场景。; 阅读建议:建议读者结合Matlab代码深入理解控制律的设计原理与实现细节,重点关注系统的建模过程、稳定性分析与仿真结果的动态演化,可在此基础上开展算法改进与跨场景迁移研究。

(Multisim课设资料)最全面函数信号发生器(三角波+正弦波+方波信号+锯齿波仿真设计+报告文档

内容概要:本文详细介绍了基于Multisim平台设计的多功能函数信号发生器,能够稳定产生三角波、正弦波、方波和锯齿波四种常用信号,涵盖完整的电路设计、仿真验证与调试过程,并配套完整的课程设计报告。资料系统阐述了各波形的生成原理与电路结构,包括运算放大器的应用、RC振荡电路设计、积分与比较电路实现等关键技术,帮助使用者深入理解信号发生器的工作机制。资源包含Multisim仿真文件、设计原理图、波形分析图表及撰写规范的课设文档,便于直接学习与修改应用; 适合人群:具备电路分析、模拟电子技术等基础知识的电子信息类、自动化类及相关专业的本科学生,适用于课程设计、实验实践或毕业设计阶段的学习者,以及指导相关实践课程的高校教师; 使用场景及目标:①作为模拟电子技术课程设计的参考模板,完成函数信号发生器的设计与仿真任务;②掌握Multisim软件在电路仿真中的实际应用,提升电路设计与调试能力;③理解多波形信号发生器的实现原理,巩固运放电路、振荡电路等核心知识点;④高效完成课程设计报告撰写,提升综合实践与工程表达能力; 其他说明:所有资料可通过提供的网盘链接完整下载,内容结构完整、逻辑清晰,具有较强的实用性和可复用性,适合作为课程设计的标准参考范例。

区间覆盖问题(总结)

转载自:https://blog.youkuaiyun.com/xianglunxi/article/details/9448951  1)区间完全覆盖问题 问题描述:给定一个长度为m的区间,再给出n条线段的起点和终点(注意这里是闭区间),求最少使用多少条线段可以将整个区间完全覆盖 样例: 区间长度8,可选的覆盖线段[2,6],[1,4],[3,6],[3,7],[6,8],[2,4],[3,5] 解...

I_O_fly的博客 5925

数据IEEE123节点数据

内容概要:本文档是一份面向科研人员的综合性技术资源汇编,聚焦于电力系统、智能优化算法、机器学习与深度学习、信号处理、路径规划、无人机应用及通信技术等多个前沿科研领域,提供了大量基于Matlab、Simulink和Python的代码实现资源。文档突出IEEE 123节点配电网数据的实际应用,涵盖三相PWM整流器控制、双有源桥(DAB)变换器优化、微电网经济调度、储能系统配置、卡尔曼滤波状态估计、多目标优化算法等关键技术的仿真与研究。资源体系结构清晰,强调理论与实践深度融合,适用于电力电子、智能电网、自动化控制等方向的科研仿真与创新验证。; 适合人群:电气工程、自动化、计算机科学、通信工程及相关专业的研究生、科研人员以及具备一定编程基础的工程技术人员。; 使用场景及目标:①开展电力系统仿真与优化研究,如配电网重构、微电网调度、储能选址定容等;②支撑智能算法开发与实证,涵盖路径规划、状态估计、信号融合等课题;③辅助高水平学术论文复现与技术创新,提升科研效率与成果质量。; 阅读建议:建议依据提供的资源目录系统化浏览,优先筛选与自身研究方向匹配的案例进行深入学习,结合Matlab/Simulink或Python环境动手复现代码,注重理解算法设计原理与仿真实现细节,以实现从模仿到创新的科研能力跃迁。

牛客网小白月赛12(华华听月月唱歌)

牛客网小白月赛12(华华听月月唱歌) 链接:https://ac.nowcoder.com/acm/contest/392/A 来源:牛客网 题目描述 月月唱歌超级好听的说!华华听说月月在某个网站发布了自己唱的歌曲,于是把完整的歌曲下载到了U盘里。然而华华不小心把U盘摔了一下,里面的文件摔碎了。月月的...

xia_feixiang的博客 335

从 MuJoCo 仿真到重力补偿:具身智能机械臂 Day 1-2 全景拆解

从 MuJoCo 仿真到重力补偿:具身智能机械臂 Day 1-2 全景拆解

C++C++++++++

C++C++++++++

*【UVA - 10382】Watering Grass(贪心,区间覆盖问题,思维)

题干: 题目大意: 有一块草坪,长为l,宽为w,在它的水平中心线上有n个位置可以安装喷水装置,各个位置上的喷水装置的覆盖范围为以它们自己的半径ri为圆。求出最少需要的喷水装置个数,如果无论如何都不能覆盖,就输出-1。 解题报告:    这题就是个区间覆盖问题的变形,,虽然给的是一个个的圆,但是我们不难发现求出与上下边的交点,这一部分区域才是我们的有效区域,然后求个区间覆盖就行了、、、nlo...

xuanweiace的博客 553

STM32G4系列数字LLC控制程序开发实战

本文详细介绍了基于STM32G4系列MCU的数字LLC控制程序开发全流程。从开发环境搭建、中断服务函数设计,到核心的电压环PID算法、Burst模式控制、状态机设计以及软启动优化,提供了完整的实战代码和关键参数调试经验,帮助开发者高效实现高性能数字电源控制。

weixin_29185493的博客 278

【线段树(递归版)】—— 点修改 区间覆盖 区间修改

线段树接触了也很久,但总是没一个安定的写法,各种花里呼哨的都写过,老实的时候连指针版的都写过。但款式那么多并没有用,到时候用起来反而坑坑洼洼的,还不如定一个标准模式。虽然是非递归的线段树代码简单而高效,但是万事慢慢来,从最基础简单的在博客开始写起。此次我们介绍的是递归版的线段树。“线段树是一种特殊的区间树“线段树是什么东西?简单的说,线段树是把 [1,n] 一段区间不断二分二分,直至每个树的节点是...

wodasini的专栏 1513

从婴儿学步到工业级应用:VLA的‘隐式标定‘原理通俗图解

本文深入解析VLA(Vision-Language-Action)模型的'隐式标定'原理,通过类比婴儿学习机制,揭示其如何替代传统手眼标定技术。文章对比了工业机器人传统标定与VLA数据驱动方法的差异,并可视化神经网络注意力机制,展示其在空间关系编码上的突破性进展。最后探讨了VLA在工业应用中的优势与混合架构解决方案。

pz890123456的博客 323

二维矩形件排样算法之最低水平线算法实现

最低水平线算法的简单实现(Python) 1、二维矩形排样算法众多,最早的有BL算法、下台阶算法、最低水平线算法等,其中最低水平线算法及其优化算法应用较多,是与智能优化算法(遗传算法、模拟退火算法等)结合的最多的算法,本文利用python对最低水平线算法做了实现...

峰爸的博客 1万+
上一篇: Painting the Fence-差分+前缀和
下一篇: To the Max-POJ1050-二维区间前缀和
Mavis code
博客等级 码龄9年 13粉丝 147原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值