#include <bits/stdc++.h>
using namespace std;
int i, j, k, N, M, K;
int a[1005], b[1005], c[1005], grid[5005][1005];
char con[1000];
int main() {
  memset(grid, 0, sizeof(grid));
  con[0] = ' ';
  con[1] = '/';
  con[2] = '\\', con[3] = ' ';
  scanf("%d", &N);
  for (i = 1; i <= N; i++) {
    scanf("%d", &c[i]);
  }
  int ma = 0, mab = 0, mib = 100000000;
  for (i = 1; i <= N; i++) {
    a[i] = a[i - 1] + c[i];
    b[i] = b[i - 1] + c[i];
    if (i % 2 == 0) b[i] -= 2 * c[i];
    ma = max(a[i], ma);
    mab = max(b[i], mab);
    mib = min(b[i], mib);
  }
  int x = 0, y = 0, diff = 1500;
  for (i = 1; i <= N; i++) {
    int cnt = x, prev = 0;
    for (cnt = x; cnt <= x + c[i] - 1; cnt++) {
      if (b[i] > y) {
        if (prev == 1) ++y;
        grid[diff + y][cnt] = 1;
        prev = 1;
      } else if (b[i] < y) {
        if (prev == 2) --y;
        grid[diff + y][cnt] = 2;
        prev = 2;
      } else {
        if (prev == 1)
          grid[diff + y][cnt] = 1;
        else
          grid[diff + y][cnt] = 2;
      }
    }
    x = cnt;
  }
  int ax = 100000000, bx = 0, ay = 100000000, by = 0;
  for (i = 0; i <= 4999; i++) {
    for (j = 0; j <= 1003; j++) {
      if (grid[i][j] != 0) {
        ax = min(ax, i);
        ay = min(ay, j);
        bx = max(bx, i);
        by = max(by, j);
      }
    }
  }
  for (i = bx; i >= ax; i--) {
    int fg = 0;
    for (j = ay; j <= by; j++) {
      printf("%c", con[grid[i][j]]);
    }
    printf("\n");
  }
}
