|Máxima ganancia de accionesDifícil
Ejercicio00:00

¿Quieres un reto mayor?

Resuelve en 15:00

info

Importante: Para que se registre el resultado tienes que iniciar sesión.

Máxima ganancia de acciones

Difícil50 pts·Algoritmos

Enunciado

Dado un array de precios donde prices[i] representa el precio de una acción en el día i, encuentra la máxima ganancia que se puede obtener comprando en un día y vendiendo en un día posterior.

Solo se permite una operación de compra y una de venta. Si no es posible obtener ganancia, devuelve 0.

Ejemplos

maxProfit([7, 1, 5, 3, 6, 4])  // 5  (comprar en 1, vender en 6)
maxProfit([7, 6, 4, 3, 1])     // 0  (precios siempre bajan)
maxProfit([1, 2])              // 1
maxProfit([2, 4, 1, 7])        // 6  (comprar en 1, vender en 7)

Notas

  • Debes comprar antes de vender (no puedes vender antes de comprar).
  • Si no hay ganancia posible, devuelve 0.
  • La solución debe ejecutarse en O(n) — un único recorrido del array.
Restriccionesexpand_more
  • Dificultad: Difícil
  • Completa todos los test cases para obtener los 50 puntos.
  • No modificar la línea export al 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
5 soluciones · 83% aceptación