백준 문제 링크
빗물
- 현재 위치에서 왼쪽에서 가장 큰 높이와
오른쪽에서 가장 큰 높이를 찾아준다.
( 빗물은 현재 위치보다 양 옆이 더 높을 때 고이므로 )- 왼쪽에서 가장 큰 높이와
오른쪽에서 가장 큰 높이 중 작은 값( m )을 찾아서,
- 현재 높이보다 그 작은 값이 크다면( m )
answer에 m - 현재높이를 더해준다.
- answer를 출력하면 끝!
h, w = map(int, input().split())
world = list(map(int, input().split()))
ans = 0
for i in range(1, w - 1):
left_max = max(world[:i])
right_max = max(world[i+1:])
m = min(left_max, right_max)
if world[i] < m:
ans += m - world[i]
print(ans)