> 文档中心 > 1109. 航班预订统计

1109. 航班预订统计

航班预订统计

  • 一、题目描述
  • 二、示例
  • 三、难度
  • 四、代码
    • Java版

一、题目描述

1109. 航班预订统计

二、示例

在这里插入图片描述

三、难度

中等 实际就是个差分数组题与370.区间加法一样,只是要注意下标取值

四、代码

Java版

package per.Kidd.demo;/** * @author Kidd * @create 2022-04-20 13:30 *//* *  1109. 航班预订统计 */public class Solution {    private int[] diff;    public int[] corpFlightBookings(int[][] bookings, int n) { //构造差分数组 diff = new int[n]; for (int[] arr : bookings) {     diff[arr[0]-1] += arr[2];     if (arr[1] < diff.length) {  diff[arr[1]] -= arr[2];     } } //还原数组  题目要求返回一个长度为 n 的数组 int[] res = new int[n]; res[0] = diff[0]; for (int i = 1; i < n; ++i) {     res[i] = res[i - 1] + diff[i]; } return res;    }    public static void main(String[] args) { int n = 2; int[][] updates = {  {1, 2, 10},  {2, 2, 15} }; Solution s = new Solution(); int[] modifiedArray = s.corpFlightBookings(updates, n); for (int i = 0; i < n; ++i) {     System.out.print(modifiedArray[i] + " "); }    }}