func minSubArrayLen(s int, nums []int) int { sum, minLen := 0, len(nums) for slow, fast := 0, 0; fast < len(nums); fast++ { sum += nums[fast] for ; s <= sum-nums[slow] && slow < fast; slow++ { sum -= nums[slow] } if s <= sum && fast-slow < minLen { minLen = fast - slow + 1 } } if s <= sum { return minLen } return 0 }