[백준 12846번] 무서운
N,data = int(input()),(*map(int,input().split()))+(0) histogram,result = (),0 for i in range(N+1): j = i while histogram and histogram(-1)(0)>=data(i): h,j = histogram.pop() result = max(result,h*(i-j)) histogram.append((data(i),j)) print(result) 히스토그램에서 가장 큰 직사각형(백준 #6549) 히스토그램에서 가장 큰 직사각형(Python3)(tistory.com)도 똑같은 문제입니다. 데이터에 0을 추가하여 기존 코드에서 사소한 코드 개선이 이루어졌습니다.