【用最少数量的箭引爆气球】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/---])
相关推荐
森林里的程序猿猿8 分钟前
垃圾收集器G1和ZGC
java·jvm·算法
weixin_4041576810 分钟前
Java高级面试与工程实践问题集(五)
java·开发语言·面试
fengci.16 分钟前
ctfshow(web入门)295-300
java·开发语言·学习
机器学习之心16 分钟前
LSBoost增强算法回归预测+SHAP可解释分析+新数据预测(多输入单输出)MATLAB代码
算法·matlab·回归·lsboost·shap可解释分析
Looooking18 分钟前
Python 之获取安装包所占用磁盘空间大小
python
WenGyyyL26 分钟前
ColBERT论文研读——NLP(IR)里程碑之作
人工智能·python·语言模型·自然语言处理
lly20240627 分钟前
SOAP 简介
开发语言
lxy-up29 分钟前
RAG--切片策略
python
ricky_fan36 分钟前
(OpenAI)Codex 安装、部署使用方式
python·macos·conda·vim
小王不爱笑13238 分钟前
Java 对象拷贝(浅拷贝 / 深拷贝)
java·开发语言·python