/** * @param {number} s * @param {number[]} nums * @return {number} */ var minSubArrayLen = function(s, nums) { // 双指针 let minLen = nums.length + 1 let i = 0 let j = 0 let sum = 0
while (j < nums.length) { // 放大 sum += nums[j] while (sum >= s) { // 缩小 sum -= nums[i] minLen = Math.min(minLen, j - i + 1) i++ } j++ }