1. 题目

给你一个区间列表,请你删除列表中被其他区间所覆盖的区间。

只有当 c <= a 且 b <= d 时,我们才认为区间 [a,b) 被区间 [c,d) 覆盖。

在完成所有删除操作后,请你返回列表中剩余区间的数目。

示例:
输入:intervals = [[1,4],[3,6],[2,8]]
输出:2
解释:区间 [3,6] 被区间 [2,8] 覆盖,所以它被删除了。提示:​​​​​​
1 <= intervals.length <= 1000
0 <= intervals[i][0] < intervals[i][1] <= 10^5
对于所有的 i != j:intervals[i] != intervals[j]

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/remove-covered-intervals
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

  • 先排序,再遍历
class Solution {public:int removeCoveredIntervals(vector<vector<int>>& intervals) {sort(intervals.begin(), intervals.end(),[](const auto& a, const auto& b) { if(a[0] != b[0]) return a[0] < b[0]; else return a[1] < b[1];});//lambda匿名函数int i, l = intervals[0][0], r = intervals[0][1], n = intervals.size();for(i = 1; i < intervals.size(); ++i){if(intervals[i][0] <= l && r <= intervals[i][1]){n--;l = intervals[i][0];//选择最大的区间作为覆盖别人r = intervals[i][1];}else if(l <= intervals[i][0] && intervals[i][1] <= r)n--;else  //不能覆盖当前,把当前作为基准{    l = intervals[i][0];r = intervals[i][1];}}return n;}
};

LeetCode 1288. 删除被覆盖区间(lambda排序)相关推荐

  1. LeetCode 740. 删除与获得点数(排序+动态规划)

    文章目录 1. 题目 2. 解题 1. 题目 给定一个整数数组 nums ,你可以对它进行一些操作. 每次操作中,选择任意一个 nums[i] ,删除它并获得 nums[i] 的点数.之后,你必须删除 ...

  2. LeetCode 1273. 删除树节点(拓扑排序/DFS)

    文章目录 1. 题目 2. 解题 2.1 取巧解 2.2 拓扑排序 2.3 建图+DFS 1. 题目 给你一棵以节点 0 为根节点的树,定义如下: 节点的总数为 nodes 个: 第 i 个节点的值为 ...

  3. 七十二、区间合并,插入求交集, 删除被覆盖区间

    @Author:Runsen 编程的本质来源于算法,而算法的本质来源于数学,编程只不过将数学题进行代码化. ---- Runsen 我从来不是一个呆在舒适区间的人,高中毕业,大学往死了干了三年,毕竟还 ...

  4. 【LeetCode刷题】重叠区间问题

    跟着甜姨整理了这一类问题,没有固定套路,但需要找规律以及细心. 重叠区间 252,会议室,easy 题解 实质是判断有没有重叠区间,将区间按照会议开始时间排序,然后遍历一遍即可. 代码 class S ...

  5. LeetCode 1272. 删除区间

    文章目录 1. 题目 2. 解题 1. 题目 给你一个 有序的 不相交区间列表 intervals 和一个要删除的区间 toBeRemoved, intervals 中的每一个区间 intervals ...

  6. C++描述 LeetCode 26. 删除排序数组中的重复项

    C++描述 LeetCode 26. 删除排序数组中的重复项   大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博主目前仅在CSDN中写博客 ...

  7. [链表|多解法] leetcode 19 删除链表的倒数第N个节点

    [链表|多解法] leetcode 19 删除链表的倒数第N个节点 1.题目 题目链接 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点. 示例: 给定一个链表: 1->2-&g ...

  8. [算法]LeetCode 专题 -- 二分查找专题 34. 在排序数组中查找元素的第一个和最后一个位置

    LeetCode 专题 – 二分查找专题 34. 在排序数组中查找元素的第一个和最后一个位置 难度:中等 题目描述 给定一个按照升序排列的整数数组 nums,和一个目标值 target.找出给定目标值 ...

  9. LeetCode 2382. 删除操作后的最大子段和

    LeetCode 2382. 删除操作后的最大子段和 倒叙 + 并查集 typedef long long LL; class Solution {public:vector<long long ...

最新文章

  1. Python培训分享:Python发展前景怎么样?
  2. 基因疾病关联的图卷积神经网络
  3. 【计算理论】下推自动机 PDA 及 计算示例
  4. clockdiff-检测两台linux主机的时间差
  5. 《Linux内核设计的艺术:图解Linux操作系统架构设计与实现原理》——2.15 本章小结...
  6. Input为number类型maxlength不好使,用js轻松解决
  7. web页面移动端键盘弹出后对页面布局的影响
  8. html校园生活模板,学校生活日记模板集锦9篇
  9. 【Web开发】HTML颜色代码表
  10. Chorme 模拟分辨率设置
  11. 基于AT89S52的俄罗斯方块游戏设计与实现
  12. 七色的寒冷彩虹便冒了出来
  13. 数据准确性和模型准确性
  14. Unity局部坐标与世界坐标
  15. 数值计算大作业:最小二乘法拟合(Matlab实现)
  16. centos:centos7.3镜像下载
  17. C#二维码条码生成存入文本加缓存
  18. 风、寒、暑、湿、燥、火
  19. 网刻工具linux,批量网刻操作系统(使用GHOST工具)
  20. 计算机网络技术 校企合作,计算机网络技术校企合作模式探讨

热门文章

  1. frame越过另一个frame_拥抱swoole(三)之用php实现一个混合服务器
  2. ideaspringboot项目上传服务器_PHP中使用 TUS 协议来实现可恢复文件上传
  3. Visual C++中 #include stdafx.h 头文件的用法
  4. 前端小插件之手写js循环滚动特效
  5. PYQT4 Python GUI 编写与 打包.exe程序
  6. Spark学习(一) -- Spark安装及简介
  7. UML类图画法及类之间几种关系
  8. WinForm与脚本的交互
  9. C++ std::move()和完美转发
  10. C语言 ,嵌入式 ,数据结构 面试题目(2)