【用最少数量的箭引爆气球】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/---])
相关推荐
kebeiovo几秒前
游戏服务端开发:Actor模型详解(Go语言)
开发语言·后端·golang
ChaoZiLL8 分钟前
我的数据结构4-栈和队列
数据结构
香辣牛肉饭12 分钟前
【算法】动态规划 最长公共子序列(LCS)
经验分享·笔记·算法·动态规划
赶紧写完去睡觉18 分钟前
Anaconda 创建虚拟环境与使用
python·pycharm·conda
迷途呀19 分钟前
Python:函数中的参数类型
开发语言·笔记·python·langchain·nlp
miller-tsunami25 分钟前
顺序表相关知识点
数据结构·顺序表
Herbert_hwt35 分钟前
建立Java程序开发
java·开发语言
你驴我1 小时前
WhatsApp 多账号下消息已读回执的实时聚合与推送实践
后端·python
愚公移码1 小时前
蓝凌EKP18产品:流程虚拟机(PVM)
java·开发语言·前端