Leetcode Challenge
23 subscribers
1 photo
42 links
Пытаюсь решать задачки с leetcode
Download Telegram
[Решение]. Leetcode 11. Container With Most Water

Условие задачи

Чтобы найти решение, нужно перебрать все возможные комбинации линий. Для этого воспользуемся методом двух указателей, пойдем с начала и конца массива и будем вычислять текущую площадь, постепенно смещаясь к центру. Из всех полученных результатов отберем максимальный.


function getVolume(height: number[], left: number, right: number): number {
const h1 = height[left]
const h2 = height[right]
return Math.min(h1, h2) * (right - left)
}

function maxArea(height: number[]): number {
let left = 0
let right = height.length - 1
let max = 0

while(left < right) {
max = Math.max(max, getVolume(height, left, right))

if (height[left] < height[right]) {
left++
} else {
right--
}
}

return max
}


#medium #arrays #twopointers

@leetcode_furrycat