#include <bits/stdc++.h>
struct pct {
  int x;
  int y;
} v[2000];
int n, a, l, lmin = 100000, lmax = -100000, i, j, jj, l0, pl, pc, ll;
char x[5100][5100];
int main() {
  scanf("%d", &n);
  for (i = 1; i <= n; i++) {
    scanf("%d", &a);
    v[i].x = v[i - 1].x + a;
    if (i % 2 == 1)
      v[i].y = v[i - 1].y + a;
    else
      v[i].y = v[i - 1].y - a;
    if (v[i].y > lmax) lmax = v[i].y;
    if (v[i].y < lmin) lmin = v[i].y;
  }
  if (lmin > 0) lmin = 0;
  if (lmax < 0) lmax = 0;
  l = lmax - lmin;
  l0 = lmax + 1;
  for (i = 1; i <= n; i++) {
    pc = v[i - 1].x;
    pl = v[i - 1].y;
    for (j = v[i - 1].x; j < v[i].x; j++) {
      for (jj = lmax; jj >= lmin; jj--) {
        if (pc != j || pl != jj) {
          ll = lmax - jj;
          if (x[ll][j] == 0) x[ll][j] = ' ';
        } else if (pc == j && pl == jj)
          if (v[i].y > v[i - 1].y) {
            ll = lmax - jj;
            x[ll][j] = '/';
          } else {
            ll = lmax - jj;
            x[ll][j] = ' ';
            x[ll + 1][j] = '\\';
          }
      }
      pc++;
      if (v[i].y > v[i - 1].y)
        pl++;
      else
        pl--;
    }
  }
  for (i = 1; i < l; i++) {
    for (j = 0; j < v[n].x; j++) {
      if (x[i][j] == '/' || x[i][j] == '\\') a++;
      printf("%c", x[i][j]);
    }
    printf("\n");
  }
  for (j = 0; j < v[n].x; j++) {
    printf("%c", x[i][j]);
  }
  return 0;
}
