class Solution {
//差分数组
private int[] diff;
public void increment(int i, int j, int val){
diff[i] += val;
if(j+1 < diff.length)
diff[j+1] -= val;
}
public int[] corpFlightBookings(int[][] bookings, int n) {
//构建差分数组
diff = new int[n];
//执行区间加减
for(int i = 0; i < bookings.length;i++){
increment(bookings[i][0]-1, bookings[i][1]-1, bookings[i][2]);
}
//恢复原始数组
for(int i = 1; i < n;i++)
diff[i] += diff[i-1];
return diff;
}
}