Solución
solution.tsTypeScript
function trapWater(heights: number[]): number {
console.log(heights)
// TODO: Implementa tu solución aquí
if (heights.length < 2)
return 0;
var count = 0;
for (var i = 0; i < heights.length; i++) {
var x = heights[i];
if (i == 0) {
if (heights[1] > x) {
continue;
}
}
else if (heights[i + 1] > x) {
continue;
}
console.log("x="+x)
var a: number[] = [];
for (var j = i; j < heights.length; j++) {
if (j != i) {
console.log(a)
if (x <= heights[j]) {
i = j-1;
var items = 0;
for (var k = 0; k < a.length; k++) {
items += heights[a[k]];
}
count += (x * a.length) - items;
console.log("count"+count)
a = [];
break;
}
else
a.push(j);
}
}
}
if(count>0)
return count;
return 0;
}
// No modificar: necesario para evaluar el resultado.
export { trapWater };1respuestas