Solución

JL@juanluisabreu_4c541ef6
·3/4/2026TypeScript
solution.tsTypeScript
function trappedWater(heights: number[]): number {
  let resultado = 0;
  //Recorriendo el Arreglos desde la posición 1, hasta la posición final -1
  for(let i = 1; i< heights.length-1; i++) {
    //Calculando el valor mayor de las posiciones a la izquierda del índice recorrido actual
    let maxIzquierda = [...heights.filter((valor, indice) => indice < i)].sort((a,b) => b-a)[0];
    
    //Calculando el valor mayor de las posiciones a la derecha del índice recorrido actual
    let maxDerecha = [...heights.filter((valor, indice) => indice > i)].sort((a,b) => b-a)[0];

    //Calculando el cantidad de Agua que acumula
    let valor = (Math.max(0, Math.min(maxIzquierda, maxDerecha))) - heights[i];

    //Si la acumulación es positivo, entonces se toma en cuenta su resultado
    resultado += valor>0? valor: 0; 
  }
  return resultado;
}

// No modificar: necesario para evaluar el resultado.
export { trappedWater };
0respuestas
Respuestas
0

Aún no hay respuestas

¡Sé el primero en responder!

Escribir un comentario

Recuerda ser amable. Estás comentando la solución de otra persona. Comparte tu perspectiva de forma constructiva y respetuosa.

Debes iniciar sesión para publicar un comentario.
Markdown