177 字
1 分钟
算法 : 差分
§一维差分
差分与前缀和的关系,类似导数与积分的关系。
数组 a 的差分的前缀和就是数组 a(不变)。
模板:
class Solution {public: int numberOfPoints(vector<vector<int>>& nums) { int max_end = ranges::max(nums, {}, [](const auto& a) { return a[1]; })[1];
vector<int> diff(max_end + 2); // 注意下面有 end+1 for (auto& interval : nums) { diff[interval[0]]++; diff[interval[1] + 1]--; }
int ans = 0, s = 0; for (int d : diff) { s += d; ans += s > 0; } return ans; }};