sliding window (2) 썸네일형 리스트형 합이 S와 같거나 큰 subarray의 최소 길이 구하기 Smallest Subarray With a Greater Sum (easy) 리트코드의 이지 난이도 문제풀이다. 앞의 최대 합 서브어레이 구하기 응용인데, 다른 점은 if를 while로 변경해주는 점이다. (하나의 값을 더했을 때, S값을 넘어버릴 수 있기 때문이다.) 또 나는 길이를 length 변수로 따로 선언했는데, window_end-window_start+1로 바로 구할 수 있다. 알고리즘 풀이에는 루프를 돌면서 증가시켜줘야 하는 값 갯수는 최소화 시켜주는게 맞다고 생각. 아니면 효율성은 약간 떨어지더라도, 코드로 뽑아내는(함수로) 방법도 있음. 파이썬 풀이 def smallest_subarray_sum(s, arr): window_sum = 0 min_length = math.inf wind.. K 사이즈 배열의 가장 큰 합 구하기 Maximum Sum Subarray of Size K (easy) 리트코드의 이지 난이도 문제 풀이다. 시간 복잡도 : O(N) 공간 복잡도 : O(1) (배열 요소 없이 정수형 변수만 사용) 루프 밖에 윈도우 시작 인덱스 0으로 초기화(window_start=0) 길이 k가 되기 전엔 계속 더함 길이 k가 되면 (window_end>=k-1) 최대값 계산 맨 앞 인덱스 값 빼줌 맨 앞 인덱스 증가 파이썬 해답 def max_sub_array_of_size_k(k, arr): max_sum , window_sum = 0, 0 window_start = 0 for window_end in range(len(arr)): window_sum += arr[window_end] # 다음 요소 더함. # k 길이.. 이전 1 다음