当前位置: 首页 > news >正文

区间交集:用最少数量的箭引爆气球

区间交集:用最少数量的箭引爆气球

用最少数量的箭引爆气球

leetcode.cn/problems/minimum-number-of-arrows-to-burst-balloons/…

有一些球形气球贴在一堵用 XY 平面表示的墙面上。墙面上的气球记录在整数数组 points​ ,其中points[i] = [x<sub>start</sub>, x<sub>end</sub>]​ 表示水平直径在 x<sub>start</sub>​ 和 x<sub>end</sub>​之间的气球。你不知道气球的确切 y 坐标。

一支弓箭可以沿着 x 轴从不同点 完全垂直 地射出。在坐标 x​ 处射出一支箭,若有一个气球的直径的开始和结束坐标为 xstartxend 且满足 x<sub>start</sub> ≤ x ≤ xend则该气球会被 引爆 可以射出的弓箭的数量 没有限制 。 弓箭一旦被射出之后,可以无限地前进。

给你一个数组 points​ ,返回引爆所有气球所必须射出的 最小 弓箭数

可以参考 区间选点

import java.util.Arrays;class Solution {public int findMinArrowShots(int[][] points) {int n = points.length;Arrays.sort(points, (a, b) -> {if (a[0] == b[0]) {return a[1] > b[1] ? 1 : -1;}return a[0] > b[0] ? 1 : -1;});int l = points[0][0], r = points[0][1];int res = 1;for (int i = 1; i < n; i++) {if (points[i][0] > r) {res++;l = points[i][0];r = points[i][1];} else {// unionl = points[i][0];r = Math.min(points[i][1], r);}}return res;}
}
http://www.dtcms.com/a/251454.html

相关文章:

  • DAY49 超大力王爱学Python
  • 网络编程(HTTP协议)
  • 讲一下进程和线程
  • 大模型笔记4:RAG检索增强生成
  • MobaXterm首次连接Ubuntu失败
  • 浏览器基础及缓存
  • 02-Timer0-Timer1-Timer2-Timer3-Timer4测试程序
  • O - 方差
  • 湖北理元理律师事务所:债务优化中如何保障债务人生存权益
  • 安装 WSL2 与设置​
  • 基于MSE-Nacos实现服务的动态发现和配置动态管理
  • mac如何使用tensorboardx?
  • Hive集成Paimon
  • 【Erdas实验教程】022:遥感图像辐射增强(直方图均衡化)
  • 【性能调优系列】如何分析火焰图
  • 计算机操作系统(计算题公式)
  • React组件通信——props
  • MyBatisPlus 全面学习路径
  • 【AI学习】【Ubuntu 22.04】【安装Ollama】两种方式
  • Spring-ai 1.0.0 学习(三)——流式调用及模型参数
  • JavaScript学习笔记
  • React-router实现原理剖析
  • OC-UI学习-Auto Layout使用
  • Hierarchical Vector Quantization for Unsupervised Action Segmentation
  • 如何实现自动标注
  • 文本预测和分类任务
  • 语言模型的泛化能力和训练数据依赖性
  • 【项目实训】【项目博客#09】HarmonySmartCodingSystem系统后端智能API检索与代码助手实现(6.2-6.15)
  • python 用正则在response.text中获取<title>标签的内容
  • springboot3-笔记总结