[ BOJ / Python ] 14719번 빗물

황승환·2022년 5월 31일
0

Python

목록 보기
317/498


이번 문제는 단순하게 구현으로 해결할 수 있는 문제였다. 처음에는 접근 방법이 생각나지 않아 시간을 보냈다. 그러던 중, 현재 위치를 기준으로 좌우의 최댓값에 대하여 값을 더하면 구할 수 있을 것이라 생각하였고, 이러한 방식으로 접근하여 해결하였다.

Code

h, w=map(int, input().split())
blocks=list(map(int, input().split()))
answer=0
for i in range(1, w-1):
    lm, rm=max(blocks[:i]), max(blocks[i+1:])
    if blocks[i]<min(lm, rm):
        answer+=min(lm, rm)-blocks[i]
print(answer)

profile
꾸준함을 꿈꾸는 SW 전공 학부생의 개발 일기

0개의 댓글