#include <bits/stdc++.h>
using namespace std;
long long a[50];
bool g[400][400][8][30];
long long b[400][400];
long long n;
long long dx[] = {0, 1, 1, 1, 0, -1, -1, -1};
long long dy[] = {1, 1, 0, -1, -1, -1, 0, 1};
long long dir1[] = {1, 2, 3, 4, 5, 6, 7, 0};
long long dir2[] = {7, 0, 1, 2, 3, 4, 5, 6};
void recur(long long x, long long y, long long dir, long long depth) {
  if (depth >= n) return;
  long long l = a[depth];
  if (g[x][y][dir][depth]) return;
  g[x][y][dir][depth] = true;
  for (long long i = 1; i <= l; i++) {
    b[x + dx[dir] * i][y + dy[dir] * i] = true;
  }
  long long nx = x + dx[dir] * l;
  long long ny = y + dy[dir] * l;
  recur(nx, ny, dir1[dir], depth + 1);
  recur(nx, ny, dir2[dir], depth + 1);
}
void solve() {
  cin >> n;
  for (long long i = 0; i < n; i++) {
    cin >> a[i];
  }
  recur(200, 200, 0, 0);
  long long cnt = 0;
  for (long long i = 0; i < 400; i++) {
    for (long long j = 0; j < 400; j++) {
      if (b[i][j]) cnt++;
    }
  }
  cout << cnt << endl;
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  solve();
}
