#include <bits/stdc++.h>
using namespace std;
int num;
void solve(int n) {
  num = 1;
  for (int i = 1; i <= n + 1; i++) {
    num *= 2;
  }
  num--;
}
int dp[5000];
int a[5000];
int ans = 0;
int Abs(int tt) {
  if (tt >= 0) return tt;
  return -tt;
}
void dfs(int k) {
  if (k > num) return;
  dfs(2 * k);
  dfs(2 * k + 1);
  dp[k] = max(dp[2 * k] + a[2 * k - 1], dp[2 * k + 1] + a[2 * k]);
  int ta = dp[2 * k] + a[2 * k - 1];
  int tb = dp[k * 2 + 1] + a[2 * k];
  ans += abs(ta - tb);
}
int main() {
  int n;
  scanf("%d", &n);
  solve(n);
  for (int i = 1; i < num; i++) scanf("%d", &a[i]);
  dfs(1);
  printf("%d\n", ans);
  return 0;
}
