Description

題目 PDF 檔在這裡

在資本主義社會中,資本的運作是經濟活動的核心。股票市場是資本主義體系中一個極為重要的組成部分,投資者利用股票交易來增值自己的資本,並且為企業提供資金來促進發展。在這個過程中,如何抓住市場波動中的投資機會,最大化利潤,成為了每一位投資者都在思考的問題。

小明最近對股票市場產生了濃厚的興趣,他決定進行一次模擬投資,並且希望從中獲取最大的利潤。根據市場的變化,他可以在一段給定的時間內選擇進行一次買入和一次賣出的操作。每當股票的價格波動時,小明需要決定什麼時候買入,什麼時候賣出,以最大化他的投資回報。

然而,
這次模擬投資有一個挑戰:小明「必須且只能進行一次買入和一次賣出」,而他需要在一個確定的時間段內選擇這兩個操作。最重要的是,賠錢也是可能的,因為有時候市場的變化對他來說並不友好。那麼,在給定的時間段內,最大利潤是多少呢?

你可以在同個時間點買入賣出,但仍需要負擔該點的漲跌,舉例而言,如果有一個時間段是 $-1, -1, -1, -1$,你選擇在其中一點買入賣出,則需要負擔 $-1$ 元的漲跌。

Input Format

第一行包含一個正整數 $n$ ($1 \leq n \leq 2 \cdot 10 ^ 5$) "--- 時間段的長度。

第二行有 $n$ 個整數 $x_i$ ($-109 \leq x_i \leq 10 ^ 9$) "--- 每個時間點的漲跌幅度。

Output Format

輸出一個整數 "--- 最大利潤。

Sample Input 1

8
-1 3 -2 5 3 -5 2 2

Sample Output 1

9

Hints

對於範例測資:

在第二個時間點買入並且在第四個時間點賣出,利潤 $= 3 - 2 + 5 + 3 = 9$ 為最佳解

Problem Source

TopCoder

User's AC Ratio

100.0% (3/3)

Tags

Problem Setter

Created by ianwen

Subtasks

No. Testdata Range Constraints Score
1 0 範例測資 0
2 1~5 $\forall i\ (1 \leq i \leq n) \implies x_i \ge 0$ 4
3 6~10 $\forall i\ (1 \leq i \leq n) \implies x_i \le 0$ 7
4 11~15 $\exists i\ (1 \leq i \leq n) \, \left( \forall j \lt i \ (x_j \lt 0) \land \forall j \geq i \ (x_j \geq 0) \right)$ 12
5 16~20 $\exists i\ (1 \leq i \leq n) \, \left( \forall j \lt i \ (x_j \geq 0) \land \forall j \geq i \ (x_j \lt 0) \right)$ 12
6 0~28 無其他限制 65

Testdata and Limits

No. Time Limit (ms) Memory Limit (VSS, KiB) Memory Limit (RSS, KiB) Output Limit (KiB) Subtasks
0 1000 524287 524288 65536 1 6
1 1000 524287 524288 65536 2 6
2 1000 524287 524288 65536 2 6
3 1000 524287 524288 65536 2 6
4 1000 524287 524288 65536 2 6
5 1000 524287 524288 65536 2 6
6 1000 524287 524288 65536 3 6
7 1000 524287 524288 65536 3 6
8 1000 524287 524288 65536 3 6
9 1000 524287 524288 65536 3 6
10 1000 524287 524288 65536 3 6
11 1000 524287 524288 65536 4 6
12 1000 524287 524288 65536 4 6
13 1000 524287 524288 65536 4 6
14 1000 524287 524288 65536 4 6
15 1000 524287 524288 65536 4 6
16 1000 524287 524288 65536 5 6
17 1000 524287 524288 65536 5 6
18 1000 524287 524288 65536 5 6
19 1000 524287 524288 65536 5 6
20 1000 524287 524288 65536 5 6
21 1000 524287 524288 65536 6
22 1000 524287 524288 65536 6
23 1000 524287 524288 65536 6
24 1000 524287 524288 65536 6
25 1000 524287 524288 65536 6
26 1000 524287 524288 65536 6
27 1000 524287 524288 65536 6
28 1000 524287 524288 65536 6