0
点赞
收藏
分享

微信扫一扫

[差分数组]leetcode1109:航班预订统计(medium)

木匠0819 2022-02-04 阅读 44

题目:
在这里插入图片描述
在这里插入图片描述


题解:


代码如下:

const int N = 2e4+10;
using LL = long long;
LL diff[N];
class Solution {
public:
    vector<int> corpFlightBookings(vector<vector<int>>& bookings, int n) {
        memset(diff,0,sizeof diff);
        for(auto b:bookings){
            // 区间[l,n]加上c,在把区间[r+1,n]减去c,这样来保证区间[l,r]加上c了
            int l=b[0],r=b[1],c=b[2];
            diff[l]+=c,diff[r+1]-=c;
        }
        vector<int> res;
        // 还原差分数组
        for(int i=1;i<=n;++i){
            diff[i]+=diff[i-1];
            res.push_back(diff[i]);
        }
        return res;
    }
};
举报

相关推荐

0 条评论