【用最少数量的箭引爆气球】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/---])
相关推荐
2301_810730104 分钟前
python第四次作业
数据结构·python·算法
马剑威(威哥爱编程)5 分钟前
Libvio.link爬虫技术解析:搞定反爬机制
爬虫·python
adam_life7 分钟前
区间动态# P1880 [NOI1995] 石子合并】
算法
坠金12 分钟前
递归、递归和回溯的区别
算法
zhougl99612 分钟前
Java 枚举类(enum)详解
java·开发语言·python
yong999014 分钟前
基于势能原理的圆柱齿轮啮合刚度计算MATLAB程序实现
开发语言·matlab
春栀怡铃声16 分钟前
认识二叉树~
c语言·数据结构·经验分享·c·编译
恋爱绝缘体116 分钟前
Java语言提供了八种基本类型。六种数字类型【函数基数噶】
java·python·算法
serve the people19 分钟前
python环境搭建 (三) FastAPI 与 Flask 对比
python·flask·fastapi
仰泳的熊猫21 分钟前
题目1434:蓝桥杯历届试题-回文数字
数据结构·c++·算法·蓝桥杯