思路:
这道题假如要用暴力的方法,是过不去的。要使用差分的思想,创建一个差数组。因为本道题初始的座位数是0,直接建立一个全0数组即可。
参考代码:
class Solution {
public:vector<int> corpFlightBookings(vector<vector<int>>& bookings, int n) {vector<int> v;for(int i = 0;i <= n; i++) //此处需要多加个一个0,因为飞机编号是从1开始的v.push_back(0);int first, last, seats;for(int i = 0; i < bookings.size(); i++){first = bookings[i][0];last = bookings[i][1];seats = bookings[i][2];v[first-1] += seats;v[last] -= seats;}for(int i = 1; i < n; i++) //将差分数组转成正常的座位数v[i] += v[i-1];v.pop_back();return v;}
};