【用最少数量的箭引爆气球】python刷题记录

R2-贪心篇.

求最小,那就尽可能地假设更多的气球y值不相同咯。

不对,气球除了y值我们随便摆,所以找尽可能多重叠的,就作为同一只箭。

python 复制代码
class Solution:
    def findMinArrowShots(self, points: List[List[int]]) -> int:
        #贪心策略:按右端点从小到大排序,尽量往右端射箭,如果在当前区间,就不用重复射箭
        points.sort(key=lambda x:x[1])
        cur=points[0][1]
        ret=1
        for a,b in points:
            #如果下一个左端大于本次右端,就需要多射一只箭
            if a>cur:
                ret+=1
                cur=b
        return ret

ps:

排序sort语法:

python 复制代码
 points.sort(key=lambda x:x[0/1/2/---])
相关推荐
蒟蒻的贤3 分钟前
编译原理里的冲突到底是什么?
考研·算法
IpdataCloud5 分钟前
企业安全运营中,如何用IP风险识别工具快速发现异常终端?操作指南
开发语言·php
码界筑梦坊7 分钟前
125-基于Flask的客户购物偏好数据可视化分析系统
python·信息可视化·flask·毕业设计
兩尛17 分钟前
C++多线程,并发
java·开发语言
_深海凉_18 分钟前
LeetCode热题100-二叉树的右视图
算法·leetcode·职场和发展
圣保罗的大教堂21 分钟前
leetcode 1391. 检查网格中是否存在有效路径 中等
leetcode
测试秃头怪21 分钟前
接口测试与常用接口测试工具详解
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
坐吃山猪22 分钟前
【Nanobot】README03_LEVEL2_工具系统架构
python·源码·agent·nanobot
计算机安禾26 分钟前
【c++面向对象编程】第29篇:定位new(placement new):在指定内存上构造对象
开发语言·c++·算法
淞綰29 分钟前
c语言的练习-字符串的练习-寻找最长连续字符以及出现次数
c语言·数据结构·学习·算法·c语言的练习