출처 : 링크텍스트
빌딩의 조망권을 확보하기 위해선 자신의 위치의 앞뒤로 2개의 빌딩 보다 높아야 한다. 때문에 먼저 주변의 빌딩들 중 가장 높은 빌딩의 높이를 구한고 자신의 빌딩의 높이에서 빼주면 자신의 빌딩에서 조망권을 확보한 세대를 구할 수 있다.
for test_case in range(1, 11):
width = int(input())
building = list(map(int, input().split()))
cnt = 0
for i in range(2, width - 2):
max_building = max(building[i - 2], building[i - 1], building[i + 1], building[i + 2])
if building[i] > max_building:
cnt += (building[i] - max_building)
print('#{0} {1}'.format(test_case, cnt))
for test_case in range(1, 11):
width = int(input())
building = list(map(int, input().split()))
cnt = 0
for i in range(2, width - 2):
max_building = building[i - 2]
for j in range(i - 1, i + 3):
if j == i:
continue
if max_building < building[j]:
max_building = building[j]
if building[i] > max_building:
cnt += (building[i] - max_building)
print('#{0} {1}'.format(test_case, cnt))