【用最少数量的箭引爆气球】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/---])
相关推荐
心疼你的一切几秒前
Unity开发Rokid应用之离线语音指令交互模型
android·开发语言·unity·游戏引擎·交互·lucene
N***73851 分钟前
JavaScript物联网案例
开发语言·javascript·物联网
IT方大同9 分钟前
C语言的组成部分
c语言·开发语言
BINGCHN9 分钟前
流量分析进阶(一):RCTF2025-Shadows of Asgard
开发语言·python
高洁0123 分钟前
具身智能-普通LLM智能体与具身智能:从语言理解到自主行动 (2)
深度学习·算法·aigc·transformer·知识图谱
G***669127 分钟前
Java区块链开发
java·开发语言·区块链
l1t34 分钟前
使用DuckDB SQL求解Advent of Code 2024第9题 磁盘碎片整理
数据库·sql·算法·duckdb·advent of code
GeekPMAlex37 分钟前
Python SQLite多线程、上下文管理器与生成器全面解析
python
顾安r38 分钟前
11.22 脚本 手机termux项目分析(bash)
前端·python·stm32·flask·bash
慧慧吖@40 分钟前
Zustand
开发语言·javascript·ecmascript