sub array with sum k

PHOTO EMBED

Tue Jan 21 2025 13:25:09 GMT+0000 (Coordinated Universal Time)

Saved by @javads

class Solution {
    public int subarraySum(int[] nums, int k) {
        HashMap<Long,Integer> hm=new HashMap<>();
        long sum=0;
        int cnt=0;
        hm.put(sum,1);
        for(int i=0;i<nums.length;i++){
            sum+=nums[i];
            if(hm.containsKey(sum-k)){
                cnt+=hm.get(sum-k);

            }
            if(hm.containsKey(sum)){
                hm.put(sum,hm.get(sum)+1);
            }
            else{
            hm.put(sum,1);
            }
        }
        
        return cnt;
        
    }
    
}
content_copyCOPY