【用最少数量的箭引爆气球】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/---])
相关推荐
JHC00000021 小时前
基于Ollama,Milvus构建的建议知识检索系统
人工智能·python·milvus
mOok ONSC21 小时前
SpringBoot项目中读取resource目录下的文件(六种方法)
spring boot·python·pycharm
ZPC821021 小时前
如何创建一个单例类 (Singleton)
开发语言·前端·人工智能
Darkwanderor21 小时前
什么数据量适合用什么算法
c++·算法
超绝振刀怪21 小时前
【C++多态】
开发语言·c++
workflower21 小时前
AI制造-推荐初始步骤
java·开发语言·人工智能·软件工程·制造·需求分析·软件需求
zc.ovo21 小时前
河北师范大学2026校赛题解(A,E,I)
c++·算法
py有趣21 小时前
力扣热门100题之环形链表
算法·leetcode·链表
GIS兵墩墩1 天前
postgis--PostgreSQL16及其plpython3u扩展
python·postgis
new Object ~1 天前
LangChain的短期记忆存储实现
python·langchain