最大乘积和
来源:互联网 发布:申请域名 编辑:程序博客网 时间:2024/06/05 01:09
代码如下
#include <bits/stdc++.h>using namespace std;typedef long long LL;const int MAXN = 100050;LL a[MAXN], sum[MAXN];LL L[MAXN], R[MAXN];int n;int main (){ scanf("%d", &n); for(int i = 1; i <= n; i++) { scanf("%lld", &a[i]); sum[i] = sum[i - 1] + a[i]; L[i] = R[i] = i; } a[0] = a[n + 1] = -1; for(int i = 1; i <= n; i++) { while(a[i] <= a[L[i] - 1]) L[i] = L[L[i] - 1]; } for(int i = n; i >= 1; i--) { while(a[i] <= a[R[i] + 1]) R[i] = R[R[i] + 1]; } LL ans = -1, l, r; for(int i = 1; i <= n; i++) { LL T = a[i] * (sum[R[i]] - sum[L[i] - 1]); if(ans < T) ans = T, l = L[i], r = R[i]; } printf("%lld\n", ans);}
阅读全文
0 0
- 最大乘积和
- 最大乘积子串-----输出子串和乘积
- 最大乘积
- 乘积最大
- 乘积最大
- 乘积最大
- 乘积最大
- 最大乘积
- 最大乘积
- 最大乘积
- 最大乘积
- 最大乘积
- 乘积最大
- 乘积最大
- 最大乘积
- 乘积最大
- 乘积最大
- 乘积最大
- 全志A83T平台调试MIPI DSI屏幕心得
- Linux 禁止某个IP访问服务器
- PCL无法打开各种lib的解决方式
- Cool Edit之扫频波的生成
- 《剑指offer2》问题10 青蛙跳台阶&&变态跳台阶 Java实现
- 最大乘积和
- 根据输入流读取文件类型
- mini.DataGrid中 的 cellendedit 事件
- 260.Single Number III
- 我的博客
- SecurityException: Permission Denial: starting Intent { flg=0x10000000 cmp=com.wjcloud/.MainActivity
- jvm虚拟机运行时分析
- Python脚本--基于正则表达式对文件进行解析
- java数据同步