1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
// @Title: 盛最多水的容器 (Container With Most Water)
// @Author: 15816537946@163.com
// @Date: 2020-10-28 09:38:22
// @Runtime: 20 ms
// @Memory: 6.3 MB
func maxArea(height []int) int {
	lo, hi := 0, len(height)-1
	var largest int
	for lo < hi {
		largest = max(largest, (hi-lo)*min(height[lo], height[hi]))
		if height[lo] > height[hi] {
			hi--
		} else {
			lo++
		}
	}

	return largest
}

func max(a, b int) int {
	if a > b {
		return a
	}
	return b
}

func min(a, b int) int {
	if a > b {
		return b
	}
	return a
}