区间的价值
System Message (命题人)
基准时间限制:1 秒 空间限制:131072 KB 分值: 160
我们定义“区间的价值”为一段区间的最大值*最小值。
一个区间左端点在L,右端点在R,那么该区间的长度为(R-L+1)。
现在聪明的杰西想要知道,对于长度为k的区间,最大价值的区间价值是多少。
当然,由于这个问题过于简单。
我们肯定得加强一下。
我们想要知道的是,对于长度为1~n的区间,最大价值的区间价值分别是多少。
样例解释:
长度为1的最优区间为2-2 答案为6*6
长度为2的最优区间为4-5 答案为4*4
长度为3的最优区间为2-4 答案为2*6
长度为4的最优区间为2-5 答案为2*6
长度为5的最优区间为1-5 答案为1*6
Input
单组测试数据
第一行一个数n(1<=n<=100000)。
第二行n个正整数(1<=ai<=10^9),下标从1开始。
由于某种不可抗力,ai的值将会是1~10^9内随机的一个数。(除了样例)
Output
输出共n行,第i行表示区间长度为i的区间中最大的区间价值。
Input示例
5
1 6 2 4 4
Output示例
36
16
12
12
6
思路 : 每个数在所选区间内是最大值或最小值时,才在该区间内右贡献,不妨把 a[i] 看成最小数,向左,向右找到 a[i] 是最小值的左右区间 l[i] ~ r[i], 暴力找肯定会超