#include <iostream>
#include <cmath>
#include <vector>
#include <utility>
#include <algorithm>

using namespace std;

#define FOR(i,a,b) for(int i=a; i<b; i++)
#define REP(i,a,b) for(int i=a; i<=b; i++)
#define LL long long
#define PP pair<int,int>

int n,k;
vector<PP> v;
vector<int> a;

LL F(int i,int j,int k)
{
	//i < j < k
	return a[i] + a[j]*2 + a[k] * 3;
}

int main()
{

	
	
	cin>>n;
	a.resize(n);
	
	FOR(i,0,n)
	{
		cin>>a[i];
		v.push_back(make_pair(a[i],i));
	}
	
	sort(v.begin(),v.end());
	
	//Tim den nhom dau tien
	int index = v[n-1].second;
	int count = 3;
	LL t = v[n-1].first * 3;
	for(int i=n-1; i>=0; i--)
	{
		if(v[i].second < index)
		{
			count--;
			if(count > 0)
			{
				index = v[i].second;
				//cout<<index<<" - "<<v[i].first<<endl;
				t += count*v[i].first;
			}		
		}
	}
	
	cout<<t<<endl;
	
	return 0;
}