히스토그램 K개 빼기
시간 제한6초메모리 제한1024 MB
K가 0부터 N-1일 때 각각 기둥을 정확히 K개 빼서 남은 히스토그램의 최대 직사각형 넓이를 가장 크게 만든 뒤 그 값을 구한다.
문제
레프를 이어 수업을 맡게 된 흑왕은 올해도 역시 히스토그램에 포함되는 최대 넓이 직사각형 문제를 내려고 한다. 흑왕이 가진 히스토그램은 기둥 개로 이루어져 있으며, 높이가 인 기둥들을 순서대로 이어붙여 만들었다. 모든 기둥의 너비는 로 동일하다.
올해에는 다양한 난이도의 문제를 제공하기 위해 각각에 대해 기둥을 개씩 뺀 히스토그램을 가지고 문제를 낼 것이다. 흑왕은 넓이가 넓은 직사각형을 좋아하기 때문에, 각 에 대해 기둥을 정확히 개 뺀 히스토그램 중 가장 넓은 직사각형을 포함할 수 있는 히스토그램을 골라 그것을 가지고 문제를 내려고 한다.
- 어떤 히스토그램에 포함되는 최대 직사각형이란, 해당 히스토그램에 완전히 포함되고 각 변이 좌표축에 평행한 직사각형 중 넓이가 가장 넓은 직사각형이다.
- 히스토그램에서 어떤 기둥(들)을 뺀다는 것은, 빠지지 않고 남은 기둥들을 순서를 유지한 채 빈 틈 없이 이어붙인다는 것이다. 예를 들어, 기둥 높이가 순서대로 인 히스토그램에서 2번째와 5번째 기둥을 뺀다면 남은 히스토그램의 기둥 높이는 가 된다.
흑왕이 가진 히스토그램에서 정확히 개의 기둥을 빼서 만들 수 있는 모든 히스토그램들에 대해, 포함되는 최대 직사각형의 넓이의 최댓값을 라고 하자. 에 대해 총 개의 값을 모두 구하자.
입력
첫 번째 줄에 흑왕이 가진 히스토그램을 이루는 기둥의 수 이 주어진다. ()
두 번째 줄에 각 기둥의 높이 이 공백으로 구분되어 주어진다. ()
출력
개의 줄에 걸쳐, 번째 줄에는 의 값을 출력한다. ()