关注
use std::io::{BufRead, Write};
use std::str::FromStr;
fn solve(mut input: impl BufRead, mut output: impl Write) {
let mut buf = String::new();
input.read_line(&mut buf);
let n: usize = buf.trim_end().parse().unwrap();
buf.clear();
input.read_line(&mut buf);
let mut nums: Vec<usize> = buf
.trim_end()
.split(' ')
.map(usize::from_str)
.flatten()
.collect();
let mut sum = vec![nums[0]];
for i in 1..n {
sum.push(sum[i - 1] + nums[i]);
}
let mut st = vec![0];
let mut ans = 0;
for i in 1..n {
while let Some(top) = st.pop() {
if nums[top] < nums[i] {
st.push(top);
break;
}
ans =
ans.max((sum[i - 1] - st.last().copied().map(|c| sum[c]).unwrap_or(0)) * nums[top]);
}
st.push(i);
}
writeln!(output, "{}", ans);
}
fn main() {
solve(std::io::stdin().lock(), std::io::stdout());
}
查看原帖
1 评论
相关推荐
牛客热帖
正在热议
# 25届秋招总结 #
462418次浏览 4735人参与
# 如何排解工作中的焦虑 #
73305次浏览 1036人参与
# 地方国企笔面经互助 #
8670次浏览 19人参与
# 找工作时遇到的神仙HR #
567830次浏览 3874人参与
# 同bg的你秋招战况如何? #
88789次浏览 668人参与
# 你上一次加班是什么时候? #
23207次浏览 186人参与
# 选了这个offer,你有没有后悔? #
415434次浏览 3150人参与
# 比亚迪工作体验 #
45485次浏览 215人参与
# 晒一晒我的offer #
10027269次浏览 106347人参与
# 设计人的面试记录 #
75329次浏览 965人参与
# 你今年的平均薪资是多少? #
77823次浏览 377人参与
# 虾皮求职进展汇总 #
129092次浏览 940人参与
# 非技术岗薪资爆料 #
202562次浏览 1732人参与
# 实习,投递多份简历没人回复怎么办 #
2463906次浏览 34920人参与
# 你投了多少份简历了? #
68196次浏览 814人参与
# 如果公司给你放一天假,你会怎么度过? #
5059次浏览 65人参与
# 你的秋招进展怎么样了 #
1718924次浏览 24791人参与
# 实习必须要去大厂吗? #
56842次浏览 969人参与
# 什么专业适合考公 #
15114次浏览 118人参与
# 总结:哪家公司面试体验感最好 #
20522次浏览 94人参与