#include <iostream>
#include <queue>
#include <utility>
#include <functional>
#include <cmath>
#include <cstdio>
#include <cstdlib>
using namespace std;
//英语 博友程序巧妙未实现 背
int main()
{
while(1)
{
int n;
//cin>>n;
scanf("%d",&n);
if(n==0)
{
break;
}
priority_queue<pair<int,int>,vector<pair<int,int> >, greater<pair<int,int> > > zheng;//id
priority_queue<pair<int,int>,vector<pair<int,int> >, greater<pair<int,int> > > fu;//id
for(int i=0;i<n;i++)
{
int t;
//cin>>t;
scanf("%d",&t);
if(t>0)
{
zheng.push(make_pair(i,t));
}else if(t<0)
{
fu.push(make_pair(i,t));
}
}
long long jg=0;
while(fu.empty()!=1)
{
int fz=fu.top().second;
int fi=fu.top().first;
fu.pop();
while(zheng.empty()!=1 && fz!=0)
{
int zz=zheng.top().second;
int zi=zheng.top().first;
//cout<<fi<<" "<<fz<<endl;
//cout<<zi<<" "<<zz<<endl;
//cout<<jg<<endl;
zheng.pop();
if(abs(zz)>abs(fz))
{
jg=jg+abs(fi-zi)*abs(fz);
zz=zz+fz;
fz=0;
zheng.push(make_pair(zi,zz));
}else if(abs(zz)<=abs(fz))
{
jg=jg+abs(fi-zi)*abs(zz);
fz=zz+fz;
zz=0;
}
//cout<<fi<<" "<<fz<<endl;
//cout<<zi<<" "<<zz<<endl;
//cout<<jg<<endl;
}
//cout<<"hi"<<endl;
//cout<<jg<<endl;
}
cout<<jg<<endl;
}
return 0;
}