【51nod 区间的价值 】+ 思维

区间的价值 System Message (命题人) 基准时间限制:1 秒 空间限制:131072 KB 分值: 160 我们定义“区间的价值”为一段区间的最大值*最小值。 一个区间左端点在L,右端点在R,那么该区间的长度为(R-L+1)。 现在聪明的杰西想要知道,对于长度为k的区间,最大价值的区间价值是多少。 当然,由于这个问题过于简单。 我们肯定得加强一下。 我们想要知道的是,对
摘要由CSDN通过智能技术生成

区间的价值
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], 暴力找肯定会超

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值