Skip to content

Commit 815b256

Browse files
authored
Create 0303-range-sum-query-immutable.ts
1 parent bda63d8 commit 815b256

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
class NumArray {
2+
3+
prefixSums: number[] = [];
4+
5+
constructor(nums: number[]) {
6+
this.prefixSums.push(nums[0]);
7+
8+
for(let i=1; i<nums.length; i++)
9+
this.prefixSums.push(this.prefixSums[i-1] + nums[i])
10+
}
11+
12+
sumRange(left: number, right: number): number {
13+
if(left === 0) return this.prefixSums[right];
14+
return this.prefixSums[right] - this.prefixSums[left-1];
15+
}
16+
}
17+
18+
/**
19+
* Your NumArray object will be instantiated and called as such:
20+
* var obj = new NumArray(nums)
21+
* var param_1 = obj.sumRange(left,right)
22+
*/

0 commit comments

Comments
 (0)