만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

히스토그램에서 가장 큰 직사각형과 쿼리 2

시간 제한2초메모리 제한1024 MB

요약
막대 N개의 높이가 주어질 때, l번째부터 r번째까지의 막대만 남겼을 때 만들 수 있는 가장 큰 직사각형의 넓이를 구합니다.
난이도

어려움10점 중 8점

유형
스택, 세그먼트 트리, 분할 정복
정답자
아직 제출이 없습니다

문제

Study nature: 자연을 탐구하고 세상의 문제를 발견하는 인재.

위 문장은 KSA 비전 2040에서 공개된 모토의 일부다.

하지만 본 문제의 출제자는 KSA를 졸업했으므로, 남의 문제를 베껴오기로 하였다. 본 문제는 '히스토그램에서 가장 큰 직사각형과 쿼리' 문제를 몇 글자만 바꾼 것이다.

히스토그램은 직사각형 여러 개가 아래쪽으로 정렬되어 있는 도형이다. 각 직사각형은 너비가 11로 일정하지만, 높이는 서로 다를 수도 있다. 예를 들어, 다음 그림은 높이가 3,5,8,8,4,73, 5, 8, 8, 4, 7인 직사각형으로 이루어진 히스토그램이다.

이 히스토그램에서 아래와 같은 쿼리 QQ개를 수행해보자.

  • l rl \, r: ll번째 직사각형부터 rr번째 직사각형까지만 있을 때, 가장 넓이가 큰 직사각형의 넓이를 출력한다.

입력

첫 번째 줄에 직사각형의 수 NN이 주어진다.

두 번째 줄에는 히스토그램에서 각 직사각형의 높이를 나타내는 NN개의 정수 H1,H2,⋯ ,HNH_1, H_2, \cdots, H_N가 공백으로 구분되어 왼쪽에서 오른쪽으로 순서대로 주어진다.

세 번째 줄에는 쿼리의 수 QQ가 주어진다.

다음 QQ개의 줄에 쿼리들의 정보가 주어지며, 각 줄에는 두 개의 정수 ll, rr이 공백으로 구분되어 주어진다.

출력

QQ개의 줄에 걸쳐 각 쿼리의 정답을 출력한다.

제한

  • 1≤N,Q≤1051\leq N,Q\leq 10^5
  • 1≤Hi≤1091\leq H_i\leq 10^9
  • 1≤l≤r≤N1\leq l\leq r\leq N

예제1

  1. 예제 1

    입력
    6
    3 5 8 8 4 7
    5
    1 6
    1 3
    2 4
    3 5
    4 6
    
    예상 출력
    20
    10
    16
    16
    12