Given an integer array nums, find the sum of the elements between indices i and j (i ≤ j), inclusive.
Example:
Given nums = [-2, 0, 3, -5, 2, -1]
sumRange(0, 2) -> 1
sumRange(2, 5) -> -1
sumRange(0, 5) -> -3
public class NumArray {
private int[]nums;
int[] sum;
public NumArray(int[] nums) {
if(nums==null||nums.length==0) return;
this.nums=nums;
sum=new int[nums.length];
sum[0]=0;
for(int k=1;k<nums.length;k++){
sum[k]=sum[k-1]+nums[k-1];
}
}
public int sumRange(int i, int j) {
if(i<0||i>=nums.length||j<0||j>=nums.length){
return 0;
}else if(i>j) return 0;
return sum[j]-sum[i]+nums[j];
}
}
// Your NumArray object will be instantiated and called as such:
// NumArray numArray = new NumArray(nums);
// numArray.sumRange(0, 1);
// numArray.sumRange(1, 2);