Menu
CoddyTech

Maximum Sum Subarray of Size K

Ricevi un array di numeri interi nums e una lunghezza della finestra k. Esamina ogni sequenza di esattamente k elementi adiacenti e restituisci la somma più grande tra quelle ottenute. I valori possono essere negativi, quindi anche la risposta può essere negativa.

Funzione

maxSumSubarray(nums: integer-array, k: integer) → integer
numsinteger-array
l'array di numeri interi
kinteger
quanti elementi adiacenti contiene ciascuna finestra
Restituisceinteger
la somma più grande di k elementi consecutivi

Vincoli

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

Esempi

Input
nums = [4, -1, 3, 7, -2, 5, 1]k = 3
Output
10
Spiegazione
Le cinque finestre di lunghezza 3 sommano 6, 9, 8, 10 e 4. La più grande è 7 + (-2) + 5 = 10.

lock icon+15 test nascosti all’invio

challenge icon

Per approfondire

Puoi anche restituire il punto di inizio della finestra migliore, scegliendo quella più a sinistra quando più finestre sono a pari merito?

Ripristina il codice
def maxSumSubarray(nums, k):
    # Scrivi il codice qui
Casi di test

Caso 1

Caso 2

Caso 3

Input

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

Atteso

10