930. Binary Subarrays With Sum
Given a binary array nums and an integer goal, return the number of non-empty subarrays with a sum goal.
A subarray is a contiguous part of the array.
Example 1:
Input: nums = [1,0,1,0,1], goal = 2 Output: 4 Explanation: The 4 subarrays are bolded and underlined below: [1,0,1,0,1] [1,0,1,0,1] [1,0,1,0,1] [1,0,1,0,1]
Example 2:
Input: nums = [0,0,0,0,0], goal = 0 Output: 15
Constraints:
1 <= nums.length <= 3 * 104nums[i]is either0or1.0 <= goal <= nums.length
ArrayHash TableSliding WindowPrefix Sum
Hints
Hint 1
Can you transform the problem into finding two prefix sums whose difference equals
goal?Hint 2
While iterating through the array, keep track of how many times each prefix sum has appeared so far.
Hint 3
If the current prefix sum is
curr, how many previous prefix sums equal to curr - goal exist?Preparing judge…