AT_arc194_a [ARC194A] Operations on a Stack
题目描述
给定一个长度为 $N$ 的整数序列 $(A_1, A_2, \ldots, A_N)$。此外,存在一个栈 $S$,初始时 $S$ 为空栈。
对于 $i = 1, 2, \ldots, N$ 的每个步骤,按顺序执行以下两种操作中的恰好一种:
- 将 $A_i$ 作为元素添加到 $S$ 的末尾。
- 删除 $S$ 末尾的元素。注意当 $S$ 为空时不能选择此操作。
请输出所有操作结束后,栈 $S$ 中元素总和的可能最大值。
输入格式
输入通过标准输入给出,格式如下:
> $N$ $A_1$ $A_2$ $\ldots$ $A_N$
输出格式
输出答案。
说明/提示
### 约束条件
- $1 \leq N \leq 2 \times 10^5$
- $-10^9 \leq A_i \leq 10^9$
- 输入均为整数
### 样例解释 1
考虑从初始空栈 $S$ 开始按以下方式操作:
- 对于 $i = 1$,将 $A_1 = 3$ 添加到 $S$ 末尾,此时 $S = (3)$。
- 对于 $i = 2$,将 $A_2 = -1$ 添加到 $S$ 末尾,此时 $S = (3, -1)$。
- 对于 $i = 3$,删除 $S$ 末尾元素,此时 $S = (3)$。
- 对于 $i = 4$,将 $A_4 = 5$ 添加到 $S$ 末尾,此时 $S = (3, 5)$。
- 对于 $i = 5$,将 $A_5 = -9$ 添加到 $S$ 末尾,此时 $S = (3, 5, -9)$。
- 对于 $i = 6$,删除 $S$ 末尾元素,此时 $S = (3, 5)$。
此时,所有操作结束后 $S$ 的元素总和为 $3 + 5 = 8$,这是可能的最大值。
### 样例解释 2
注意当 $S$ 为空时,必须选择添加元素的操作。
翻译由 DeepSeek R1 完成