【用最少数量的箭引爆气球】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/---])
相关推荐
哥不想学算法1 分钟前
【C++】字符串字面量拼接
开发语言·c++
海石14 分钟前
1500分的题目,确实有实力,不过还是我略胜一筹
算法·leetcode
海石15 分钟前
【记忆化搜索】条条大路通AC,走好适合你的那一条,走到后再考虑走得快
算法·leetcode
hhzz1 小时前
Python大数据实战(十六):音乐推荐系统——基于协同过滤算法构建个性化歌单引擎
大数据·人工智能·python·数据挖掘·数据分析
SunnyDays10112 小时前
Python PDF 转 Markdown 详解(转换整个文档,特定页面,表格,扫描 PDF)
python·pdf 转 markdown·pdf 转 md·扫描 pdf 转 md·pdf 表格转 md
gugucoding2 小时前
21. 【C语言】打包不同类型:结构体
c语言·开发语言
2601_954706492 小时前
云手机 API 自动化实战:Python 批量控机、挂机脚本完整实现
python·智能手机·自动化
Brookty2 小时前
【JavaEE】线程安全(一).4:写块串行保安全、CAS
java·开发语言·java-ee·多线程·线程安全
Jerry2 小时前
LeetCode 151. 反转字符串中的单词
算法