[ Web Proxy ]
URL:
Viewing: https://raw.githubusercontent.com/arjunmullick/Interview/master/RangeSumQueryImmutable.java [Back]  [Original]

package com.leetcode;

import java.util.HashMap;

public class RangeSumQueryImmutable {

    //https://leetcode.com/problems/range-sum-query-immutable/
    class NumArray {
        //[-2, 0, 3, -5, 2, -1]
        //[-2,-2, 1, -4,-2, -1]

        HashMap indexSum;
        int[] nums;//original
        public NumArray(int[] nums) {
            this.nums = nums;
            indexSum = new HashMap();
            int n = nums.length;
            int sum = 0;
            for(int i=0 ;i< n ; i++){
                sum += nums[i];
                indexSum.put(i,sum);
            }
        }

        public int sumRange(int i, int j) {
            int val1 = indexSum.get(i);
            int val2 = indexSum.get(j);
            return (val2 - val1) + nums[i]; // add nums[i] as val1 is subtracting it

        }
    }
}

Web Proxy Viewer  |  New URL  |  Original Page