새소식

반응형
Algorithm/Array

[LeetCode] 209 Minimum Size Subarray Sum

  • -
반응형

주어진 배열의 모둔 숫자는 양수이다.

target과 같거나 큰 수를 구성하는 subArray의 길이를 리턴하라

단, 가장작은 길이를 리턴하라.

만약 없다면 0을 리턴하라.

class Solution {
    public int minSubArrayLen(int target, int[] nums) {
        
    }
}

 

앞에서 풀어본 find pivot index와 유사하게 sliding 관련 문제이다.

다만, 앞에 문제는 왼쪽의 끝이 정해져 있던 느낌이라면

이번 문제는 왼쪽을 향해 움직이고, 그와 동시에 조건이 만족하면 오른쪽도 차차 움직이며 조건을 검증해가는

sliding + two pointer의 느낌이다. 

더보기
{
    int right = 0;
    int left = 0;
    int sum = 0;
    int rst = Integer.MAX_VALUE;

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

        while (sum >= target) {
            rst = Math.min(rst, right - left + 1);
            sum -= nums[left++];
        }
    }
    return rst == Integer.MAX_VALUE ? 0 : rst;
}

 

sliding이라는 개념을 학습하고 유사한 문제라고 도전해보았는데

역시 쉽지 않았다..

더 열심히 문제를 풀어봐야겠다. 

반응형

'Algorithm > Array' 카테고리의 다른 글

[LeetCode] 724 Find Pivot Index  (0) 2025.06.28
[LeetCode] 283 Move zeros  (0) 2025.06.26
[LeetCode] 704 Binary Search  (0) 2025.06.23
[코딩테스트] Array  (0) 2025.06.21
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.