#include<bits/stdc++.h>
using namespace std;
inline int read(){
register int x=0,ch=getchar();
while(ch<'0'||ch>'9') ch=getchar();
while(ch<='9'&&ch>='0'){ x=(x<<1)+(x<<3)+(ch^48); ch=getchar(); }
return x;
}
#define int long long
int a[100005],st[100005],f[100005],q[100005];
signed main()
{
register int i,j,n,s,t,x,y,ans=0;
cin>>n;
for(i=1;i<=n;i++) st[i]=st[i-1]+(a[i]=read());
s=1; t=0;
for(i=1;i<=n;i++){
while(s<=t&&a[q[t]]>=a[i]) t--;
q[++t]=i;
x=a[q[s]]*(st[i]-st[q[s-1]]);
while(s<t&&x<=a[q[s+1]]*(st[i]-st[q[s]])){
x=a[q[s+1]]*(st[i]-st[q[s]]); s++;
}
f[i]=x;
ans=max(ans,f[i]);
}
cout<<ans;
return 0;
}