class Solution { public: //滑动窗口法 //右指针逐渐向右,左一指针找到第一个符合的位置,左二指针找到最后一个符合的位置 int numSubarraysWithSum(vector<int>& nums, int goal) { int left1 = 0, left2 = 0; int n = nums.size(); int sum1 = 0, sum2 = 0; int ret = 0;
for(int right = 0; right < n; right++){ sum2 += nums[right]; sum1 += nums[right]; while(left2 <= right && sum2 >= goal){ sum2 -= nums[left2]; left2++; }