[SW Academy] 1206. View

DreamJJW·2023년 9월 13일
0

SW Academy

목록 보기
20/26

문제

풀이

각 건물의 조명권이 보장된 층이 몇개든, 일단 조명권이 있으려면 왼쪽으로부터 2칸, 오른쪽으로부터 2칸의 건물보다 무조건 커야한다.

그 조건을 걸어두고, 양쪽 2칸의 건물의 높이를 빼준 다음, 그 값들 중 최솟값을 더해주면 된다.

t = 10
for test_case in range(t):
    n = int(input())
    b = list(map(int, input().split()))
    answer = 0
    for i in range(2, len(b) - 2):
        if b[i] > b[i+1] and b[i] > b[i+2] and b[i] > b[i-1] and b[i] > b[i-2]:
            answer += min(b[i] - b[i+1], b[i] - b[i+2], b[i] - b[i-1], b[i] - b[i-2])

    print(f"#{test_case+1} {answer}")
profile
간절한 사람

0개의 댓글