LeetCode#303 Range Sum Query
阿新 • • 發佈:2018-12-11
1、利用動態規劃思想,sum(i, j)
實際上是sum(0, j) - sum(0, i-1)
。
2、構造一個逐次累加和的陣列,返回i、j兩項相減結果即可。
class NumArray { public: NumArray(vector<int> nums) { sums.clear(); sums.push_back(0); for(int i = 0; i < nums.size(); i++){ sums.push_back(sums[i] + nums[i]); } } int sumRange(int i, int j) { return sums[j + 1] - sums[i]; } private: vector<int> sums; }; /** * Your NumArray object will be instantiated and called as such: * NumArray obj = new NumArray(nums); * int param_1 = obj.sumRange(i,j); */