Menu
CoddyTech

Maximum Sum Subarray of Size K

정수 배열 nums와 윈도우 길이 k가 주어집니다. 서로 이웃한 원소가 정확히 k개인 모든 구간을 살펴보고, 그중 합이 가장 큰 값을 반환하세요. 값은 음수일 수 있으므로 답도 음수일 수 있습니다.

함수

maxSumSubarray(nums: integer-array, k: integer) → integer
numsinteger-array
정수 배열
kinteger
각 윈도우가 보유하는 이웃 요소의 수
반환값integer
연속된 k개 요소의 합 중 최댓값

제약 조건

  • 1 ≤ k ≤ nums.length ≤ 104
  • -104 ≤ nums[i] ≤ 104

예제

입력
nums = [4, -1, 3, 7, -2, 5, 1]k = 3
출력
10
설명
길이가 3인 다섯 개의 윈도우의 합은 6, 9, 8, 10, 4입니다. 가장 큰 값은 7 + (-2) + 5 = 10입니다.

lock icon제출 시 숨은 테스트 +15개

challenge icon

후속 질문

최적의 윈도우가 시작되는 위치도 반환할 수 있나요? 여러 윈도우의 결과가 같으면 가장 왼쪽에 있는 윈도우를 선택하세요.

코드 초기화
def maxSumSubarray(nums, k):
    # 여기에 코드를 작성하세요
테스트 케이스

케이스 1

케이스 2

케이스 3

입력

nums = [4, -1, 3, 7, -2, 5, 1]
k = 3

기대값

10