题目:https://leetcode-cn.com/problems/corporate-flight-bookings/

暴力

  • 枚举每条预定记录
  • 统计每个航班的预定数

差分

分析

每次预定的时候只有两个地方会导致预定位置数发生变化,即

「预定开始的航班」 和 「预定结束的航班号+1的航班」

开始的地方会导致这个地方增加m个航班,结束的地方不再需要这些位置,所以会减去m个航班。

我们并不需要真的记录每个位置的状态,只需要记录有变化的位置即可,他们所持有的信息其实是一样的。

在「有变化的位置」添加变化的状态,之后以【叠加前面状态】的方式,来持续这个变化的状态
在「变化结束的位置」减去这个变化的状态,还原原来的状态

//官方题解 python 篇
class Solution:def corpFlightBookings(self, bookings: List[List[int]], n: int) -> List[int]:nums = [0] * nfor left, right, inc in bookings:nums[left - 1] += incif right < n:nums[right] -= incfor i in range(1, n):nums[i] += nums[i - 1]return nums
//官方题解 Java 篇
class Solution {public int[] corpFlightBookings(int[][] bookings, int n) {int[] nums = new int[n];for (int[] booking : bookings) {nums[booking[0] - 1] += booking[2];if (booking[1] < n) {nums[booking[1]] -= booking[2];}}for (int i = 1; i < n; i++) {nums[i] += nums[i - 1];}return nums;}
}
//官方题解 JavaScript 篇
var corpFlightBookings = function(bookings, n) {const nums = new Array(n).fill(0);for (const booking of bookings) {nums[booking[0] - 1] += booking[2];if (booking[1] < n) {nums[booking[1]] -= booking[2];}}for (let i = 1; i < n; i++) {nums[i] += nums[i - 1];}return nums;
};

【210831】1109. 航班预订统计相关推荐

  1. 1109. 航班预订统计

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

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

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

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

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

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

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

  5. LeetCode 1109. 航班预订统计

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

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

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

  7. LeetCode 1109. 航班预订统计(差分思想)

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

  8. LeetCode 力扣 算法题解 1109. 航班预订统计(Corporate Flight Bookings) n 个航班,它们分别从 1 到 n 进行编号,请返回每个航班预定的座位总数。

    文章目录 一.题目描述 示例 1: 示例 2: 提示: 二.Python解题 1.Python代码展示 2.程序逻辑解释 3.复杂度分析 官方解释 三.测试反思 1.历史提交记录 2.提交失败记录 3 ...

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

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

最新文章

  1. 在Asp.Net MVC中设定site路径所对应的默认action
  2. win怎么打开微软更新服务器,怎样打开win10的更新服务器地址
  3. python基础===PEP网站,代码规范指南
  4. 0宽字符加密_一文看懂异或加密,有动画演示呦
  5. 674. zui长连续递增序列(JavaScript)
  6. C# 获得当前运行程序所在的目录的代码
  7. java 四则混合运算_Java实现四则混合运算 - Sabrina amp; Joshua Java Ivory Tower - ITeye博客...
  8. c语言程序设计一至六章测验,c语言程序设计1-6章.ppt
  9. 获取Android APP的包名
  10. 网络性能分析仪-RFC2544测试
  11. 惠普m128fn中文说明书_惠普M128fw使用说明书
  12. Python数据分析第四课:数据的处理(数据合并、数据筛选、数据排序)
  13. mysql 视图创建与查询数据库作业(10)
  14. go revel框架搭建
  15. 安卓第三方ROM----AOKP和CM
  16. 《计算机网络》笔记摘抄汇总
  17. 数据库中minus的用法
  18. 用c#语言做课程表系统代码,winform用datagridview制作课程表实例
  19. 滴滴快车VS易到“易来”到底谁便宜?结果惊呆了
  20. labview 和lin 通讯_LABVIEW几种通讯应用1

热门文章

  1. golang的GOPROXY设置
  2. TikTok云控功能说明
  3. ABAQUS三维骨料随机分布脚本(三种粒子,水泥沙子石子)
  4. css实现翻牌抽奖效果
  5. Web 前端代码规范
  6. 一个 ~ 引发的悲剧
  7. [DSP学习笔记]基于TMS320F28335的FFT及加窗函数实现
  8. html nav文字位置,HTML: nav 标签
  9. 【PMP备考经验】PMP 项目管理考试 5A 大神备考经验汇总(1)
  10. 子序列自动机 学习笔记