1. 题目

这里有 n 个航班,它们分别从 1 到 n 进行编号。

我们这儿有一份航班预订表,表中第 i 条预订记录 bookings[i] = [i, j, k] 意味着我们在从 i 到 j 的每个航班上预订了 k 个座位。

请你返回一个长度为 n 的数组 answer,按航班编号顺序返回每个航班上预订的座位数。

示例:
输入:bookings = [[1,2,10],[2,3,20],[2,5,25]], n = 5
输出:[10,55,45,25,25]提示:
1 <= bookings.length <= 20000
1 <= bookings[i][0] <= bookings[i][1] <= n <= 20000
1 <= bookings[i][2] <= 10000

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

2. 解题

类似题目:
LeetCode 1094. 拼车
LeetCode 370. 区间加法(差分思想)
LeetCode 995. K 连续位的最小翻转次数(差分思想)
LeetCode 732. 我的日程安排表 III(差分思想)
LeetCode 1674. 使数组互补的最少操作次数(差分思想)
LeetCode 1854. 人口最多的年份(差分)
LeetCode 5767. 检查是否区域内所有整数都被覆盖(差分)

  • 看数据量这么大,暴力肯定要超时
  • 左端点+num,右端点后面-num,中间的状态不变,就省了给每个位置更新的时间

class Solution {public:vector<int> corpFlightBookings(vector<vector<int>>& bookings, int n) {vector<int> bk(n+2,0);for(auto& b : bookings){bk[b[0]] += b[2];//左端点+numbk[b[1]+1] -= b[2];//右端点后面 +num}for(int i = 2; i <= n; i++)bk[i] += bk[i-1];return vector<int> (bk.begin()+1, bk.end()-1);}
};

344 ms 49.1 MB


我的CSDN博客地址 https://michael.blog.csdn.net/

长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!

LeetCode 1109. 航班预订统计(差分思想)相关推荐

  1. LeetCode.1109. 航班预订统计

    LeetCode.1109. 航班预订统计 难度:medium  思路: 差分数组,注意细节 diff[0] = nums[0]; 代码: class Solution {public int[] c ...

  2. C++Python描述 LeetCode 1109. 航班预订统计

    C++&Python描述 LeetCode 1109. 航班预订统计   大家好,我是亓官劼(qí guān jié ),在公众号.CSDN.GitHub.B站.华为开发者论坛等平台分享一些技 ...

  3. LeetCode 1109. 航班预订统计

    1109. 航班预订统计 [差分+前缀和] class Solution {// 差分+前缀和 3:47. 4public int[] corpFlightBookings(int[][] booki ...

  4. leetcode 1109. 航班预订统计(C++、python)

    这里有 n 个航班,它们分别从 1 到 n 进行编号. 我们这儿有一份航班预订表,表中第 i 条预订记录 bookings[i] = [i, j, k] 意味着我们在从 i 到 j 的每个航班上预订了 ...

  5. Leetcode 1109.航班预定统计 差分

    思路: 这道题假如要用暴力的方法,是过不去的.要使用差分的思想,创建一个差数组.因为本道题初始的座位数是0,直接建立一个全0数组即可. 参考代码: class Solution {public:vec ...

  6. 模拟卷Leetcode【普通】1109. 航班预订统计

    1109. 航班预订统计 这里有 n 个航班,它们分别从 1 到 n 进行编号. 有一份航班预订表 bookings ,表中第 i 条预订记录 bookings[i] = [firsti, lasti ...

  7. 【1109. 航班预订统计】

    leetcode力扣刷题打卡 题目:1109. 航班预订统计 描述:这里有 n 个航班,它们分别从 1 到 n 进行编号. 有一份航班预订表 bookings ,表中第 i 条预订记录 booking ...

  8. LeetCode - 1109 - 航班预定统计

    目录 题目来源 题目描述 示例 提示 题目解析 算法源码 题目来源 1109. 航班预订统计 - 力扣(LeetCode) 题目描述 这里有 n 个航班,它们分别从 1 到 n 进行编号. 有一份航班 ...

  9. 1109. 航班预订统计

    1109. 航班预订统计 这里有 n 个航班,它们分别从 1 到 n 进行编号. 有一份航班预订表 bookings ,表中第 i 条预订记录 bookings[i] = [firsti, lasti ...

最新文章

  1. [认证授权] 6.Permission Based Access Control
  2. OpenGL中的混合(Blending)
  3. 2017中国物联网年报:我国传感器竞争力与发达国家的差距
  4. 个人喜欢的关于模式识别、机器学习、推荐系统、图像特征、深度学习、数值计算、目标跟踪等方面个人主页及博客
  5. applicationContext.xml存放的位置
  6. Visual Code 快捷创建HTML,CSS和Class
  7. OneProxy实现MySQL读写分离与负载均衡
  8. Spring MVC:使用基于Java的配置创建一个简单的Controller
  9. java温故笔记(二)java的数组HashMap、ConcurrentHashMap、ArrayList、LinkedList
  10. asp如何将图片文件上传到mysql数据库中_怎样才能利用ASP把图片上传到数据库
  11. EBS AP 创建会计科目失败
  12. Notification的使用,以及他的监听方法
  13. 学习大数据参加培训班,大概需要多长时间?
  14. 案例分享:Qt modbus485调试工具(读写Byte、Int、DInt、Real、DReal)(当前v1.3.0)
  15. Forth 语言学习
  16. 生则决定生,去则实不去
  17. 影响红外测温的主要因素分析
  18. oracle10如何扩asm磁盘组,在Oracle10g 新增ASM磁盘组
  19. JSP 【基础】连接数据库的登录及验证
  20. 蓝桥杯-递归-母牛生小母牛

热门文章

  1. java mapstring_ object 遍历_ListMapString,Object使用Java代码遍历以获取String,Object的值...
  2. 51单片机50个实例代码_【附代码】51单片机电子密码锁教程
  3. 汇编为什么分段执行总是执行不了_iOS汇编教程(六)CPU 指令重排与内存屏障...
  4. iconsvg image怎么变为path_昆凌是怎么收服天王周杰伦的?这几招太高明了
  5. MySQL和Mariadb都启动不了了_linux centos7mariadb安装成功启动不了 解决思路
  6. 坦克大战系列6-API常用函数说明2
  7. LeetCode:验证回文串【125】
  8. 【转载】Ubuntu终端常用的快捷键
  9. C#学习记录3上——类的封装,继承,多态
  10. vc调用matlab生成的dll实例