// Made By Haireden Aibyn #include <algorithm> #include <iostream> #include <iomanip> #include <cstring> #include <cstdlib> #include <fstream> #include <string> #include <cstdio> #include <vector> #include <cmath> #include <ctime> #include <queue> #include <deque> #include <stack> #include <map> #include <set> using namespace std; #define fname "" #define INF 2147483647 #define MOD 1000000007 #define mp make_pair #define F first #define S second #define sc scanf #define all(x) x.begin(), x.end() #define size(x) int(x.size()) #define pr printf #define deb(x) cerr << " | " << #x << " = " << x #define pb push_back #define ex exit(0) #define y1 y4 typedef long long ll; typedef unsigned long long ull; const int N = 100500; ll a[N]; int main() { srand(time(NULL)); int n; cin >> n; for (int i = 1; i <= n; i++) { cin >> a[i]; } sort(a + 1, a + 1 + n); reverse(a + 1, a + 1 + n); ll ans = 0; for (int i = 1; i <= n; i++) { ans += (1LL << (i - 1)) * 1LL * a[i]; } cout << ans; #ifndef ONLINE_JUDGE cerr << clock() << " ms"; #endif return 0; }