【用最少数量的箭引爆气球】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/---])
相关推荐
吴声子夜歌14 小时前
Node.js——os操作系统模块
开发语言·node.js·php
曹牧14 小时前
Java:驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立连接
java·开发语言·ssl
cch891814 小时前
PHP vs C++:10倍性能差距的编程语言对决
android·java·开发语言
司马万14 小时前
RUST基础1----数据类型
开发语言·算法·rust
程序员buddha14 小时前
Spring集合注入功能
windows·python·spring
cnnews14 小时前
Termux中安装python包
android·linux·开发语言·python·安卓·termux
神秘剑客_CN14 小时前
使用ffmpeg+python实现自动给视频添加移动水印
python·ffmpeg·音视频
第一程序员14 小时前
Python与数据库:SQLite、MySQL、PostgreSQL详解
python·github
卷福同学14 小时前
Claude Code源码泄露:8大隐藏功能曝光
人工智能·后端·算法
房开民1 天前
c++总结
java·开发语言·c++