[BOJ] 창고 다각형
Date:
[BOJ] 창고 다각형
Problem URL : 창고 다각형
N = int(input())
pillar = []
maxH = 0
for i in range(N):
    pillar.append(list(map(int, input().split())))
    if maxH < pillar[i][1]:
        maxH = pillar[i][1];
pillar.sort()
area = 0
H1 = 0
W1 = 0
for i in range(N):
    if H1 < pillar[i][1]:
        area += H1 * (pillar[i][0] - W1)
        H1 = pillar[i][1]
        W1 = pillar[i][0]
    if H1 == maxH:
        break
H2 = 0
W2 = 0
for j in range(N - 1, -1, -1):
    if H2 < pillar[j][1]:
        area += H2 * (W2 - pillar[j][0])
        H2 = pillar[j][1]
        W2 = pillar[j][0]
    if H2 == maxH:
        break
area += maxH * (W2 + 1 - W1)
print(area)
댓글