#include <bits/stdc++.h>
using namespace std;
const int dx[8] = {-1, -1, 0, 1, 1, 1, 0, -1},
          dy[8] = {0, 1, 1, 1, 0, -1, -1, -1};
int n, i, j, ans, a[100];
bool flag[310][310], vis[310][310][8][6][31];
void DFS(int x, int y, int d, int Step, int z) {
  if (z > n) return;
  if (vis[x][y][d][Step][z]) return;
  vis[x][y][d][Step][z] = true;
  if (Step) {
    flag[x + dx[d]][y + dy[d]] = true;
    DFS(x + dx[d], y + dy[d], d, Step - 1, z);
  } else {
    DFS(x, y, (d + 1) % 8, a[z + 1], z + 1);
    DFS(x, y, (d + 7) % 8, a[z + 1], z + 1);
  }
}
int main() {
  scanf("%d", &n);
  for (i = 1; i <= n; i++) scanf("%d", &a[i]);
  DFS(155, 155, 0, a[1], 1);
  for (i = 0; i < 310; i++)
    for (j = 1; j < 310; j++)
      if (flag[i][j]) ans++;
  printf("%d\n", ans);
  return 0;
}
