文章目录
一、题目描述
示例 1:
输入:bookings = [[1,2,10],[2,3,20],[2,5,25]], n = 5
输出:[10,55,45,25,25]
解释:
航班编号 1 2 3 4 5
预订记录 1 : 10 10
预订记录 2 : 20 20
预订记录 3 : 25 25 25 25
总座位数: 10 55 45 25 25
因此,answer = [10,55,45,25,25]
示例 2:
输入:bookings = [[1,2,10],[2,2,15]], n = 2
输出:[10,25]
解释:
航班编号 1 2
预订记录 1 : 10 10
预订记录 2 : 15
总座位数: 10 25
因此,answer = [10,25]
提示:
1 <= n <= 2 * 104
1 <= bookings.length <= 2 * 104
bookings[i].length == 3
1 <= firsti <= lasti <= n
1 <= seatsi <= 104
二、Python解题
1.Python代码展示
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author : Benjamin
# @Time : 2019/7/9 22:26
class Solution(object):
def corpFlightBookings(self, bookings, n) :
beg=[0]*(n+1)
end=[0]*(n+1)
for book in bookings:
beg[book[0]]+=book[2]
end[book[1]]+=book[2]
num=beg[1]
ans=[num]
for i in range(2,n+1):
num+=beg[i]-end[i-1]
ans.append(num)
return ans
2、程序逻辑解释
3、复杂度分析 官方解释
三、测试反思
1、历史提交记录
2、提交失败记录
3、测试反思
46 / 63 个通过测试用例看到上面的截图数据,LeetCode的题的单元测试用例居然把一个测试玩的体无完肤。