#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e3 + 14;
int n, a[maxn], per[maxn];
bool ans[maxn][maxn];
int main() {
  ios::sync_with_stdio(0), cin.tie(0);
  cin >> n;
  for (int i = 0; i < n; i++) cin >> a[i];
  iota(per, per + n, 0);
  sort(per, per + n, [](int i, int j) { return a[i] > a[j]; });
  int step = 0;
  for (int i = 0; i < n; i++) {
    int w = i;
    for (int j = 0; j < a[per[i]]; j++) {
      ans[w][per[i]] = 1;
      w = (w + 1) % (n + 1);
    }
  }
  while (count(ans[step], ans[step + 1], 1)) step++;
  cout << step << '\n';
  for (int i = 0; i < step; i++) {
    for (int j = 0; j < n; j++) cout << ans[i][j];
    cout << '\n';
  }
}
