Menu
CoddyTech

Maximum Sum Subarray of Size K

Você recebe um array de inteiros nums e um comprimento de janela k. Observe cada sequência de exatamente k elementos vizinhos e retorne a maior soma entre elas. Os valores podem ser negativos, então a resposta também pode ser negativa.

Função

maxSumSubarray(nums: integer-array, k: integer) → integer
numsinteger-array
o array de números inteiros
kinteger
quantos elementos vizinhos cada janela contém
Retornainteger
a maior soma de quaisquer k elementos consecutivos

Restrições

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

Exemplos

Entrada
nums = [4, -1, 3, 7, -2, 5, 1]k = 3
Saída
10
Explicação
As cinco janelas de comprimento 3 somam 6, 9, 8, 10 e 4. A maior é 7 + (-2) + 5 = 10.

lock icon+15 testes ocultos ao enviar

challenge icon

Para ir além

Você também pode retornar onde começa a melhor janela, escolhendo a mais à esquerda quando várias janelas empatarem?

Redefinir código
def maxSumSubarray(nums, k):
    # Escreva o código aqui
Casos de teste

Caso 1

Caso 2

Caso 3

Entrada

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

Esperado

10