#include <bits/stdc++.h>
const int N = 105;
int a[N];
int main() {
  int n, i;
  scanf("%d", &n);
  for (i = 1; i <= n; i++) scanf("%d", a + i);
  if (n < 3 || n % 2 == 0) {
    puts("-1");
    return 0;
  }
  int r = 0;
  for (i = n; i > 0; i--) {
    if (a[i]) {
      r += a[i];
      if (i % 2 == 0) {
        int j = i / 2;
        if (a[j] >= a[i])
          a[j] -= a[i];
        else
          a[j] = 0;
      } else {
        int j = i - 1;
        if (a[j] >= a[i])
          a[j] -= a[i];
        else
          a[j] = 0;
        j = (i - 1) / 2;
        if (a[j] >= a[i])
          a[j] -= a[i];
        else
          a[j] = 0;
      }
    }
  }
  printf("%d\n", r);
  return 0;
}
