👀 문제
https://leetcode.com/problems/container-with-most-water/
👊 도전
1. 설계
- 양 끝에 l, r을 두고, 범위를 좁혀가며 넓이를 구한다.
2. 구현
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/**
*
* @author HEESOO
*
*/
class Solution {
public int maxArea(int[] height) {
int max=0;
int l=0, r=height.length-1;
while(l<r){
max=Math.max(max, (r-l)*Math.min(height[l], height[r]));
if(height[l]<height[r]) l++;
else r--;
}
return max;
}
}
3. 결과
🤟 성공 🤟
4. 설명
- 양쪽 끝에 인덱스 l, r을 두고 넓이를 구한다
- 넓이= l, r중 최소 높이 * 인덱스 차이
- 최소 높이를 사용했으면 그 다음 또는 이전으로 이동한다.