19.06m
import sys
n, m = list(map(int, sys.stdin.readline().rstrip().split()))
fills = list(map(int, sys.stdin.readline().rstrip().split()))
block = [[0] * m for _ in range(n)]
for j in range(m):
for i in range(fills[j]):
block[i][j] = 1
cnt = 0
for i in range(n):
for j in range(m):
if 1 in block[i][:j] and 1 in block[i][j+1:]:
if not block[i][j]:
block[i][j] = 1
cnt += 1
print(cnt)
2차원 리스트로 받아놓고, 단순히 지금 위치보다 왼쪽과 오른쪽에 채워져있는 블록이 있다면 그 위치를 물로채우면서 cnt를 1씩 늘려갔다.
간단한 구현문제였다!