#1266. [CSP-X2023] 赚钱

[CSP-X2023] 赚钱

当前没有测试数据。

描述

小A很喜欢旅游,他的国家共有 n 个城市,编号依次为 1到n,这个暑假小 A打算从1号 城市开始按编号从小到大依次旅游完所有的城市,最后达到 n 号城市,而且他不走回头路, 每个城市只走一次。

小 A 很聪明,在没出发之前,他已经了解到,每个城市都有他喜欢的小熊纪念品,但是 每个城市的价格却不完全一样(在同一个城市买入和卖出一个小熊纪念品的价格相同),于是 小 A 打算从经过的某一个城市 x 买一个纪念品,然后在后面经过的某个城市 y 卖掉,从而赚 取其中的差价。但是他必须在某个城市买 1 次,而且只能买 1 个,并且一定要在后面的某个 城市卖掉(不能在同一个城市先买入后再卖出),因为他家里已经有很多小熊纪念品了。

如,2号城市的纪念品价格是 10元,6号城市的纪念品是 8元,10号城市的纪念品是 18 元,假设小 A在2号城市花 10元钱买了一个纪念品,如果在 6号城市卖掉他就亏了 2元(赚 -2元),如果在10号城市卖,他就会赚 8元。 小A希望赚的钱越多越好。

问:小A最多能赚多少钱(当然也有可能亏钱)?

输入输出格式

输入

第一行一个整数n,表示城市的个数。

第二行,n 个用一个空格隔开的正整数,a1,a2,..an,依次表示小 A 要经过的城市的纪念 品的价格。

输出

输出一个整数,表示小 A能赚到钱的最大值。

样例

5
2 1 6 8 4
7

样例1 解释

在2号城市花1元买,在 4号城市8元卖掉,赚 7元。

6
10 8 7 5 3 1
-1

##样例2 解释 在2号城市花8元买,在 3号城市7元卖掉,赚-1元,即亏了 1元。

数据范围

30%的数据:n1,000n≤1,000。 100%的数据:2n200,0000<ai2,000,000,0002≤n≤200,000,0<a_i≤2,000,000,000