Type: Default 1000ms 256MiB

直方图中最大的矩形(单调栈)

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

Description

直方图是由在公共基线处对齐的一系列矩形组成的多边形。

矩形具有相等的宽度,但可以具有不同的高度。

例如,图例左侧显示了由高度为 $2,1,4,5,1,3,3$ 的矩形组成的直方图,矩形的宽度都为 $1$:

2559_1.jpg

通常,直方图用于表示离散分布,例如,文本中字符的频率。

现在,请你计算在公共基线处对齐的直方图中最大矩形的面积。

图例右图显示了所描绘直方图的最大对齐矩形。

Input Format

输入包含几个测试用例。

每个测试用例占据一行,用以描述一个直方图,并以整数 $n$ 开始,表示组成直方图的矩形数目。

然后跟随 $n$ 个整数 $h_1,…,h_n$。

这些数字以从左到右的顺序表示直方图的各个矩形的高度。

每个矩形的宽度为 $1$。

同行数字用空格隔开。

当输入用例为 $n=0$ 时,结束输入,且该用例不用考虑。

Output Format

对于每一个测试用例,输出一个整数,代表指定直方图中最大矩形的区域面积。

每个数据占一行。

请注意,此矩形必须在公共基线处对齐。

7 2 1 4 5 1 3 3
4 1000 1000 1000 1000
0
8
4000

Hint

数据范围

$1 \le n \le 100000$,

$0 \le h_i \le 1000000000$

寒假集训_01_15

Not Attended
Status
Done
Rule
XCPC
Problem
21
Start at
2025-1-15 14:00
End at
2025-1-15 17:00
Duration
3 hour(s)
Host
Partic.
38