【用最少数量的箭引爆气球】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/---])
相关推荐
影寂ldy几秒前
C# 多态与函数重载(静态多态)
开发语言·c#
SilentSamsara1 分钟前
Python 与 Docker:多阶段构建、最小镜像与健康检查
运维·开发语言·python·docker·中间件·容器
变量未定义~2 分钟前
快速幂、费马小定理、约数的个数、欧拉函数模板、矩阵快速幂
开发语言
Ameilide3 分钟前
数据结构 树 二叉树
数据结构
hyunbar6 分钟前
NOT IN 的 NULL 陷阱:一次 UNION 数据“神秘消失“
开发语言·sql
C+++Python7 分钟前
如何在 Java 中使用 BIO、NIO 和 AIO?
java·开发语言·nio
Kurisu57513 分钟前
深度拆解:从令牌桶到滑动窗口,高并发系统限流算法的数学本质与边界
java·网络·算法
哈泽尔都13 分钟前
运动控制教学——5分钟学会力控算法(阻抗/导纳/力位混合)
c++·python·算法·决策树·贪心算法·机器人·gpu算力
WWW652617 分钟前
代码随想录 打卡第四十七天
数据结构·算法·leetcode
1892280486121 分钟前
NV022固态MT29F16T08GWLCEM5-QBES:C
c语言·开发语言