[백준] 빗물

yewon Lee·2023년 11월 30일
0


😎BACKJOON>14719: 빗물


import sys

h, w = map(int, sys.stdin.readline().split())
rain = list(map(int, sys.stdin.readline().split()))

answer = 0
cnt = 0
p = rain[0]
max_i = rain.index(max(rain))

for i in range(1, len(rain)):
    if p > rain[i]:
        cnt += p - rain[i]
    else:
        answer += cnt
        cnt = 0
        p = rain[i]
    if i == max_i:
        break

p = rain[w-1]
for i in range(w-1, max_i-1, -1):
    if p > rain[i]:
        cnt += p - rain[i]
    else:
        answer += cnt
        cnt = 0
        p = rain[i]

print(answer)
처음엔 풀지 못했다가 max indax 값을 찾아서 반대로 돌면 어떻겠냐는 
스터디원의 조언 덕분에 해결! 
profile
시작

0개의 댓글