Subarray Sum Equals K

Medium

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.

Constraints

  • 1 <= nums.length <= 2 * 10^4
  • -1000 <= nums[i] <= 1000
  • -10^7 <= k <= 10^7

Example

Input:   nums = [1, 2, 3], k = 3

Expected Output: 2

Edge Cases

  • An empty array will result in 0 subarrays.
  • The array can contain negative numbers and zeros, which prevents the use of a simple sliding window.
  • If k is 0, the solution must correctly count subarrays that sum to zero (e.g., [1, -1]).