【用最少数量的箭引爆气球】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/---])
相关推荐
froyoisle2 分钟前
CSP 真题解析:[CSP-J 2020-T3] 表达式
c++·算法·csp·信息学·信奥赛
geats人山人海6 分钟前
算法好题 2026.7.18
算法
Darkwanderor11 分钟前
动、静态库相关内容的详细介绍
linux·c语言·开发语言·c++
文祐14 分钟前
C++类之虚函数表没有虚继承的菱形继承
开发语言·c++·算法
Lumos18624 分钟前
51单片机从零到实战(8)——串口通信
算法
sycmancia37 分钟前
Qt——另一种创建线程的方式
开发语言·qt
至乐活着43 分钟前
深入Python内存管理与垃圾回收:从引用计数到分代回收的实战解析
python·性能优化·内存管理·垃圾回收·引用计数
m0_547486661 小时前
《Python数据分析与挖掘》全套PPT课件
python·数据挖掘·数据分析
小帽子_1231 小时前
大功率 PCS 双环闭环控制算法原理与实现
算法
你怎么知道我是队长1 小时前
JavaScript 函数 this 全解
开发语言·javascript·ecmascript