303. Range Sum Query Immutable - cocoder39/coco39_LC GitHub Wiki
303. Range Sum Query - Immutable
a variant of using this idea is range addition
time complexity is O(n)
class NumArray {
public:
NumArray(vector<int> &nums) {
sum.push_back(0);
for (int i = 0; i < nums.size(); i++) {
sum.push_back(sum[i] + nums[i]); //sum[i + 1] = sum[i] + nums[i]
}
}
int sumRange(int i, int j) {
return sum[j + 1] - sum[i];
}
private:
vector<int> sum;
};