Container With Most Water
MediumArrayTwo PointersGreedy
Solution
export function maxArea(height: number[]): number {
const getArea = (start: number, end: number) =>
Math.min(height[start], height[end]) * (end - start);
let answer = 0;
let [start, end] = [0, height.length - 1];
while (start < end) {
answer = Math.max(answer, getArea(start, end));
if (height[start] < height[end]) {
start += 1;
} else {
end -= 1;
}
}
return answer;
}