자답합니다.
39 line while문 내부에서 스택이 비었다는건 j가 0 번째 막대부터 i - 1 번째 막대까지 중 가장 작다는 것이므로
width 는 1이 아니라 i 가 되는 것입니다.
stack : 2 3 4 0
stack : 2 3
stack : 2
j = 0;
stack : empty
위와 같기 위해서는 h[i] == 0
이여야함으로
i 는 3 입니다.
3 * h[j]
h[j] == 2;
즉 2를 최대로 하는 사각형은 3 * 2 = 6 입니다.
dearsanta 7년 전
테스트 케이스는 통과하는데 어떤 반례가 있고 원인이 무엇인지 모르겠습니다.