AlgoInsight

DSA problem

Subarray Sum Equals K

MediumPrefix SumPattern: Prefix Sum + Hash Maptop75FreeAmazonGoogleFacebookMicrosoft

Given an array of integers nums and an integer k, return the total number of subarrays whose sum equals to k.

A subarray is a contiguous non-empty sequence of elements within an array.

Because nums may contain negative numbers, a sliding window will not work. The efficient solution combines a running prefix sum with a hash map that counts how many times each prefix-sum value has been seen.

Examples

Example 1
Input: nums = [1,1,1], k = 2
Output: 2
Explanation: The subarrays [1,1] starting at index 0 and [1,1] starting at index 1 both sum to 2.
Example 2
Input: nums = [1,2,3], k = 3
Output: 2
Explanation: The subarrays [1,2] and [3] both sum to 3.

Constraints

3 hints and a full solution walkthrough with step-by-step visualizations are available in the practice editor.

prefix-sumhash-maparray

Browse all DSA problems