#include<bits/stdc++.h>
using namespace std;
int a[4005];
int b[4005];
int n;
int check(){
int s=0;
for(int i=1;i<=n;i++){
if(a[i]<=2139062143&&a[i]>=0){
s++;
}
}
if(s==1){
return -1;
}
return 0;
}
int find(){//最小的k
for(int i=2;i<=n;i++){
if(a[i-1]<=a[i+1]){
return i;
}
}
return -1;
}
int find1(int k1,int sum){//最小的j
for(int i=k1;i>=1;i--){
if(a[i]>sum){
return i;
}
}
return -1;
}
int hb(){
int r=0;
for(int i=1;i<=n;i++){
if(a[i]==-1){
continue;
}
r++;
b[r]=a[i];
}
memset(a,127,sizeof(a));
for(int i=1;i<=r;i++){
a[i]=b[i];
}
n=r;
}
int main(){
int ans=0;
scanf("%d",&n);
memset(a,127,sizeof(a));
for(int i=1;i<=n;i++){
scanf("%d",&a[i]);
}
int h,h1;
while(check()!=-1){
h=find();//k
a[h-1]+=a[h];
ans+=a[h-1];
a[h]=-1;
h1=find1(h,a[h-1]);
if(h1!=-1){
swap(a[h-1],a[h1+1]);
}
hb();
}
cout<<ans;
return 0;
}