#include <bits/stdc++.h>
using namespace std;
const int fx[8] = {0, 1, 1, 1, 0, -1, -1, -1},
          fy[8] = {1, 1, 0, -1, -1, -1, 0, 1};
int n, x, m, f[155][310][310], ans;
bool bomb[151], flag[310][310];
void dfs(int t, int x, int y, int dir) {
  if (f[t][x][y] & (1 << dir)) return;
  f[t][x][y] |= 1 << dir, flag[x][y] = 1;
  if (t == m) return;
  if (bomb[t]) {
    int d1 = (dir + 7) & 7, d2 = (dir + 1) & 7;
    dfs(t + 1, x + fx[d1], y + fy[d1], d1);
    dfs(t + 1, x + fx[d2], y + fy[d2], d2);
  } else
    dfs(t + 1, x + fx[dir], y + fy[dir], dir);
}
int main() {
  scanf("%d", &n);
  while (n--) scanf("%d", &x), bomb[m += x] = 1;
  dfs(1, 150, 150, 0);
  for (int i = 0; i <= 300; ++i)
    for (int j = 0; j <= 300; ++j)
      if (flag[i][j]) ++ans;
  printf("%d\n", ans);
  return 0;
}
