#1219. 【系列题】子序列(七)最大上升子序列和

【系列题】子序列(七)最大上升子序列和

说明

一个数的序列 bib_i ​,当 b1<b2<...<bsb_1<b_2<...<b_s 的时候,我们称这个序列是上升的。对于给定的一个序列( a1,a2,...,ana_1,a_2,...,a_n ),我们可以得到一些上升的子序列( ai1,ai2,...,aika_{i1},a_{i2},...,a_{ik} ​),这里 1i1<i2<...<ikN1\leq i_1<i_2<...<i_k\leq N。比如,对于序列( 1,7,3,5,9,4,81,7,3,5,9,4,8​ ),有它的一些上升子序列,如( 1,71,7 ​),( 3,4,83,4,8 ​)等等。这些子序列中和最大为 1818​,为子序列( 1,3,5,91,3,5,9​ )的和。

你的任务,就是对于给定的序列,求出最大上升子序列和。注意,最长的上升子序列的和不一定是最大的,比如序列( 100,1,2,3100,1,2,3 )的最大上升子序列和为 100100,而最长上升子序列为( 1,2,31,2,3 )。

输入格式

输入的第一行是序列的长度 NN。第二行给出序列中的 NN 个整数 a1aNa_1\sim a_N

输出格式

一个整数,即最大上升子序列和。

样例

7
1 7 3 5 9 4 8
18

提示

样例说明: 对于数组 [1,7,3,5,9,4,8][1,7,3,5,9,4,8],和最大的子序列是( 1,3,5,91,3,5,9 ),和为 1818

数据范围: 1N10001\leq N \leq 1000 0ai100000\leq a_i \leq 10000