[LeetCode] 209. Minimum Size Subarray Sum

Chobby·2025년 2월 11일
1

LeetCode

목록 보기
227/427

😎풀이

  1. nums 순회
    1-1. sumnums[right]를 축적
    1-2. sumtarget 이상이 될 경우 nums[left]만큼 뺀 후 left포인터 증가
    1-3. 조건이 충족되는 단계에서 subarray의 길이를 비교
  2. 가장 짧은 subarray의 길이 반환
function minSubArrayLen(target: number, nums: number[]): number {
    let left = 0;
    let sum = 0;
    let minLength = Infinity;

    for (let right = 0; right < nums.length; right++) {
        sum += nums[right];

        while (sum >= target) {
            minLength = Math.min(minLength, right - left + 1);
            sum -= nums[left];
            left++;
        }
    }

    return minLength === Infinity ? 0 : minLength;
}
profile
내 지식을 공유할 수 있는 대담함

0개의 댓글