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.
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.
Example 3:
Input: nums = [1, -1, 0], k = 0
Output: 3
Explanation: The subarrays [1, -1], [1, -1, 0], and [0] all sum to 0.
1 <= nums.length <= 2 * 10⁴-1000 <= nums[i] <= 1000-10⁷ <= k <= 10⁷