303. 區域和檢索
阿新 • • 發佈:2018-12-09
給定一個整數陣列 nums,求出陣列從索引 i 到 j (i ≤ j) 範圍內元素的總和,包含 i, j 兩點。
示例:
給定 nums = [-2, 0, 3, -5, 2, -1],求和函式為 sumRange() sumRange(0, 2) -> 1 sumRange(2, 5) -> -1 sumRange(0, 5) -> -3
說明:
- 你可以假設陣列不可變。
- 會多次呼叫 sumRange 方法。
class NumArray { public: NumArray(vector<int> nums) { a.push_back(0); for(int n:nums){ a.push_back(a.back()+n); } } int sumRange(int i, int j) { return a[j+1]-a[i]; } private: vector<int> a; }; /** * Your NumArray object will be instantiated and called as such: * NumArray obj = new NumArray(nums); * int param_1 = obj.sumRange(i,j); */