047.扫描线

news/2026/1/16 18:47:55/文章来源:https://www.cnblogs.com/ssbt/p/19493411

扫描线

对边界排序,按顺序扫描,过程中动态维护当前位置状态,从而高效处理区间问题

经典扫描线问题,天际线

leetcode 218

class Solution {
public:vector<vector<int>> getSkyline(vector<vector<int>>& buildings) {set<int>st;for(auto x:buildings){st.insert(x[0]);st.insert(x[1]);}priority_queue<pair<int,int>>pq;// first :: 高度// second :: 区间右端点(区间结束时间)int i=0;vector<vector<int>>ans;int pre=-1,h;for(auto cur:st){// cur :: 当前处理的线while(i<(int)buildings.size()&&buildings[i][0]<=cur){//包含当前扫描线的区间入堆pq.push({buildings[i][2],buildings[i][1]-1});i++;}while(pq.size()&&pq.top().second<cur)pq.pop();//堆顶过期则弹出h=pq.size()?pq.top().first:0;if(h!=pre){ans.push_back({cur,h});}pre=h;}return ans;}
};

luogu P1904

#include<bits/stdc++.h>using namespace std;
typedef pair<int,int> pii;void solve(){int L,H,R;vector<vector<int>>a;while(cin>>L>>H>>R){a.push_back({L,R,H});}sort(a.begin(),a.end(),[](auto &x,auto &y){return x[0]<y[0];});set<int>st;for(auto x:a){st.insert(x[0]);st.insert(x[1]);}priority_queue<pii>pq;int i=0;int pre=-1,h;for(auto cur:st){while(i<(int)a.size()&&a[i][0]<=cur){pq.push({a[i][2],a[i][1]-1});++i;}while(pq.size()&&pq.top().second<cur)pq.pop();h=pq.size()?pq.top().first:0;if(h!=pre){cout<<cur<<' '<<h<<' ';}pre=h;}
}
int main(void){cin.tie(0)->sync_with_stdio(0);int T=1;//cin>>T;while(T--)solve();
}

类似问题

leetcode 1851

class Solution {
public:vector<int> minInterval(vector<vector<int>>& intervals, vector<int>& queries) {vector<pair<int,int>>Q;int n=queries.size();for(int i=0;i<n;++i){Q.push_back({queries[i],i});}ranges::sort(Q);sort(intervals.begin(),intervals.end(),[](auto a,auto b){return a[0]<b[0];});priority_queue<pair<int,int>,vector<pair<int,int>>,greater<>>pq;int i=0;vector<int>ans(n);for(auto [cur,id]:Q){while(i<(int)intervals.size()&&intervals[i][0]<=cur){pq.push({intervals[i][1]-intervals[i][0]+1,intervals[i][1]});++i;}while(pq.size()&&pq.top().second<cur)pq.pop();ans[id]=pq.size()?pq.top().first:-1;}return ans;}
};

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

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

相关文章

【波束成形】基于matlab最小相差多用户毫米波大规模MIMO系统混合波束成形【含Matlab源码 14944期】

&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;欢迎来到海神之光博客之家&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49…

【信道估计】粗量化大规模MIMO系统的计算高效最大似然信道估计【含Matlab源码 14946期】

&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;Matlab领域博客之家&#x1f49e;&…

【windows11】windows11安装

跳过联网激活 在联网界面按键盘调出终端界面 shift f10输入以下代码打开没有联网的选项 oobe\bypassnro跳过tpm2.0检查 在windows安装目录使用以下代码&#xff0c;这段代码是以服务器方式执行安装程序&#xff0c;会跳过很多在本地服务安装文件有限制但在服务器端没有限制的限…

【PPT】使用VSCODE+MARP输出PPT

【PPT】使用VSCODEMARP输出PPT 文章目录[TOC](文章目录)前言一、实验目的二、实验过程1. VSCODE下载MARP2.新建.md文件3.预览模式4.导出PPT三、实验结果四、参考资料总结前言 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 一、实验目的 工作原因&…

导师严选2026 TOP8一键生成论文工具:专科生毕业论文写作全攻略

导师严选2026 TOP8一键生成论文工具&#xff1a;专科生毕业论文写作全攻略 2026年专科生论文写作工具测评&#xff1a;为何需要一份权威榜单&#xff1f; 随着高校教育的不断深化&#xff0c;专科生在毕业论文写作过程中面临的问题也愈发突出。从选题困难、文献检索耗时到格式…

海外仓库存积压是“利润黑洞”还是“烫手山芋”?TOPWMS 助您破局! - 跨境小媛

在跨境电商 3.0 时代,海外仓虽是提升物流时效、降低退货率的“神器”,但一旦陷入库存积压的泥潭,它就会瞬间变成不断烧钱的“利润黑洞”。据统计,约有 42% 的卖家因库存管理不当,导致净利润率被压缩 5%-15%。 一、…

SQL查询性能优化 - EXISTS、IN

从客户表&#xff08;c1&#xff09;中&#xff0c;找出所有状态为“2”的客户&#xff0c;并且要求存在另一个状态也为“2”、邮箱包含customer、手机号以138开头的同名客户。将所有状态为“2”且满足存在性检查的最终结果&#xff0c;按照客户姓名 (c1.name) 进行排序&#x…

【程序员必看】voyage-context-3向量模型发布:RAG检索效率提升14%,存储成本仅0.5%,香不香?

最近看到一个有意思的工作&#xff0c;原文来自&#xff1a; voyage-context-3&#xff1a;聚焦分段细节&#xff0c;融入全局文档上下文 **概要&#xff1a;**Voyage AI 推出了voyage-context-3&#xff0c;这是一款情境化分段向量模型。它能为文本分段&#xff08;chunk&…

2026年 金属零部件试制加工厂家推荐榜单:汽车/航空航天/电子电器钣金软模、热成型、激光切割及DV/EV/PV工程件专业试制 - 品牌企业推荐师(官方)

2026年金属零部件试制加工行业深度解析与权威推荐榜单 在高端制造业的快速发展浪潮中,金属零部件试制加工作为连接产品设计创意与批量生产实现的关键桥梁,其战略地位日益凸显。无论是汽车工业的快速迭代、航空航天领…

你以为的生病,其实是身体在救你

学会与身体好好说话&#xff1a;一份被大多数人忽略的健康使用说明书哎&#xff0c;咱们坐下来聊两句。最近我在复盘的时候&#xff0c;突然走了个神。我发现&#xff0c;咱们这帮在ICT行业摸爬滚打了三十年的人&#xff0c;特别擅长跟复杂的系统打交道。服务器报警了&#xff…

小白必看!MCP协议让AI智能体实现“模块化自由“,告别硬编码噩梦!大模型开发新范式来了!

** AI 智能体现在能做的事情真的很厉害&#xff0c;可以思考、规划&#xff0c;还能执行各种复杂任务&#xff0c;而且代码量并不大。这让开发者看到了一个机会&#xff1a;把那些庞大复杂的代码库和 API 拆解成更实用的模块。 不过要让这些智能变成现实世界里真正能用的东西…

以机器学习为基础的房价预测分析研究(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)

以机器学习为基础的房价预测分析研究(设计源文件万字报告讲解)&#xff08;支持资料、图片参考_相关定制&#xff09; 数据集大小为19995条 报告字数8000➕ 本项目利用机器学习算法&#xff0c;如随机森林回归算法&#xff0c;依据房型、面积、建造年份等房产数据特征预测房价。…

基于深度卷积神经网络的网络流量检测与识别(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)

基于深度卷积神经网络的网络流量检测与识别(设计源文件万字报告讲解)&#xff08;支持资料、图片参考_相关定制&#xff09; &#xff0c;包含代码实现、数据集和项目报告。项目详情介绍可参考下图&#xff08;一个是模型跑出的相关实验结果表、混淆矩阵等&#xff0c;一个是根…

Java面向对象必考点:封装、继承、多态深度揭秘

文章目录Java面向对象必考点&#xff1a;封装、继承、多态深度揭秘封装&#xff1a;给代码穿上“防护衣”为什么需要封装&#xff1f;封装的具体实现封装的好处继承&#xff1a;站在巨人的肩膀上继承的基本语法继承的优势继承的注意事项继承中的访问控制多态&#xff1a;一个接…

# 不会上下文工程,还敢说自己是大模型开发者?小白也能秒变AI大神的全攻略

最近在做Deepresearch以及刷到一个不错的文章&#xff1a;context-engineering-guide&#xff0c;这篇文章揭示了提示工程以及上下文过程在智能体应用开源流程中&#xff0c;包括Deepresearch&#xff0c;MCP在内的一些概念&#xff0c;起到了非常重要的作用&#xff01; Conte…

广州一日游大致安排

广州一日游大致安排🌅 08:00 抵达广州东站 → 早餐(步行 5–10 分钟) 广州东站周边就是天河区核心,美食密度极高。 推荐早餐(任选其一)点都德(林和中路店) 经典广州早茶,离广州东很近 推荐:虾饺皇、凤爪、肠…

【AI技术yyds】百度搜索新范式、多智能体协作...信息检索领域最新研究成果全解析,开发者必看!从AI搜索到多模态推荐,一篇搞定所有前沿技术!

信息检索领域前沿研究观察&#xff1a;从AI搜索到多模态推荐 最近在信息检索领域看到了不少有意思的研究进展&#xff0c;从百度搜索提出的AI搜索范式到各种新颖的检索增强方法&#xff0c;这些工作都在试图解决当前搜索和推荐系统面临的实际问题。今天想和大家分享一下这些研究…

从排行榜看行业标杆:2026年液压拉力试验机/液压万能试验机十大品牌TOP4综合评测 - 品牌推荐大师1

液压拉力/万能试验机是现代工业与科研中用于测定金属、非金属、复合材料等力学性能的关键设备,广泛应用于航空航天、汽车制造、建筑工程、新材料研发及高等院校等众多领域。随着“中国制造2025”的深入推进与产业升级…

2026年 景观鱼池工程厂家推荐榜单:专业设计/假山鱼池/生态工程,匠心打造庭院水景艺术 - 品牌企业推荐师(官方)

2026年景观鱼池工程厂家推荐榜单:专业设计/假山鱼池/生态工程,匠心打造庭院水景艺术 在现代景观设计与庭院营造中,鱼池已从传统的水体点缀演变为融合生态、艺术与技术的综合性工程。它不仅承载着美化环境、陶冶情操…

AI Agent开发天花板:LangGraph构建DeepResearch实战,代码小白也能秒会的神操作!

上一篇内容我们讲解了怎么构建DeepResearch两个比较核心的组件&#xff1a;确定用户研究范围以及研究&#xff0c;这两个组件可以大致满足用户输入研究主题或者查询&#xff0c;然后输出一个研究结果&#xff0c;不过这个对于系统来说大概率会遇到当用户查询相对复杂&#xff0…