Ejercicio00:00
¿Quieres un reto mayor?
Resuelve en 20:00
info
Importante: Para que se registre el resultado tienes que iniciar sesión.
Suma máxima de subarreglo con mínimo K elementos
Master100 pts·Algoritmos
Enunciado
Suma máxima de subarreglo con mínimo K elementos
Dado un arreglo de enteros nums y un entero k, encuentra la suma máxima de un subarreglo contiguo que tenga al menos k elementos.
Este problema requiere una solución eficiente O(n) utilizando sumas prefijas y una deque (cola de doble extremo) para mantener el mínimo de sumas prefijas dentro de una ventana deslizante.
Algoritmo sugerido
- Calcula el arreglo de sumas prefijas
prefixde longitudn+1. - Usa una deque para mantener los índices de los mínimos de
prefix[0..j-k]. - Para cada
jdesdekhastan, calculaprefix[j] - prefix[deque.front()]y actualiza el máximo. - Agrega
j - ka la deque siprefix[j - k]es menor que los valores al final de la deque.
Ejemplo
console.log(maxSubarraySumAtLeastK([1, -1, 2, 3, -2, 1], 2)); // 5
console.log(maxSubarraySumAtLeastK([5, 1, 2], 2)); // 8
console.log(maxSubarraySumAtLeastK([-1, -2, -3], 1)); // -1
Restricciones
1 <= nums.length <= 100_000-10_000 <= nums[i] <= 10_0001 <= k <= nums.length- El subarreglo debe ser contiguo.
Restriccionesexpand_more
- Dificultad: Master
- Completa todos los test cases para obtener los 100 puntos.
- No modificar la línea
exportal final del archivo. - Se recomienda evitar el uso de inteligencia artificial para que realmente tú practiques los ejercicios.
Puedes usar console.log() para depurar. Los resultados aparecen en la Consola de salida, no en el navegador.
Inicia sesión para reaccionar
Inicia sesión para reaccionar