#1075. 最大矩形(80 分)

最大矩形(80 分)

时间限制:3000MS

内存限制:589824KB

题目描述:

(注.input()输入函数的括号中不允许添加任何信息)

编程实现:

工人砌了一面奇特的砖墙,该墙由 N 列砖组成(1 ≤ N ≤ 10610^{6}),且每列砖的数量为 Ki1Ki104K_i(1 ≤ K_i ≤ 10^4,相邻两列砖之间无缝隙),每块砖的长宽高都为 1。

小蓝为了美化这面墙,需要在这面墙中找到一块面积最大的矩形用于涂鸦,那么请你帮助小蓝找出最大矩形,并输

出其面积。

例如:N = 6,表示这面墙有 6 列,每列砖的数量依次为 3、2、1、5、6、2,如下图:

image

图中虚线部分是一块面积最大的矩形,其面积为 10。

输入描述:

第一行输入一个正整数 N(1 ≤ N ≤ 10610^6),表示这面砖墙由几列砖组成

第二行输入 N 个正整数 Ki1Ki104K_i(1 ≤ K_i ≤ 10^4),表示每列砖的数量,正整数之间以一个空格隔开

输出描述:

输出一个正整数,表示最大矩形的面积

样例输入:

6
3 2 1 5 6 2

样例输出:

10