두개의 포인터가 이동하며 for문을 돌며 현재 인덱스의 벽 크기가 가장 큰 벽 사이즈 보다 작다면 빈공간을 의미
class Solution {
fun trap(height: IntArray): Int {
var answer = 0
var left = 0
var right = height.size - 1
var leftMax = height[left] // 왼쪽 제일 큰 벽
var rightMax = height[right] // 오른쪽 제일 큰 벽
while(left != right) {
leftMax = leftMax.coerceAtLeast(height[left]) // 최댓값 구하기
rightMax = rightMax.coerceAtLeast(height[right]) // 최댓값 구하기
if(leftMax <= rightMax) {
answer += leftMax - height[left]
left ++
} else {
answer += rightMax - height[right]
right --
}
}
return answer
}
}