题目描述
板子题. 需要注意的是 vec 要 as_slice 后才可以match
样例
impl Solution {
pub fn corp_flight_bookings(bookings: Vec<Vec<i32>>, n: i32) -> Vec<i32> {
let mut diff = vec![0; n as usize + 1];
for item in bookings {
if let [l, r, v] = item.as_slice() {
diff[(*l-1) as usize] += v;
diff[(*r-1) as usize + 1] -= v;
}
}
for i in 1..n as usize {
diff[i] += diff[i-1];
}
diff.pop();
diff
}
}