Python•range-sum-query-immutable/synced-solution.py
class NumArray:
def __init__(self, nums: list[int]):
self.prefix = [class="syntax-number">0]
for num in nums:
self.prefix.append(self.prefix[-class="syntax-number">1] + num)
def sumRange(self, left: int, right: int) -> int:
return self.prefix[right + class="syntax-number">1] - self.prefix[left]
C++•range-sum-query-immutable/synced-solution.cpp
class NumArray {
private:
vector<int> prefix;
public:
NumArray(vector<int>& nums) {
prefix.push_back(class="syntax-number">0);
for (int num : nums) {
prefix.push_back(prefix.back() + num);
}
}
int sumRange(int left, int right) {
return prefix[right + class="syntax-number">1] - prefix[left];
}
};
TypeScript•range-sum-query-immutable/synced-solution.ts
class NumArray {
private prefix: number[];
constructor(nums: number[]) {
this.prefix = [class="syntax-number">0];
for (const num of nums) {
this.prefix.push(this.prefix[this.prefix.length - class="syntax-number">1] + num);
}
}
sumRange(left: number, right: number): number {
return this.prefix[right + class="syntax-number">1] - this.prefix[left];
}
}