#include <bits/stdc++.h>
#include <vector>
#include <cmath>
#include <algorithm>
#include <string.h>
#include <utility> 
#include <tuple>
#include <iterator>
#include <functional>
#include <numeric>
using namespace std;
#define rep(i,n) for(long i=0; i<n; i++)


void solve(){
  int n;
  cin >> n;
  int a[n+10];
  rep(i,n){
    cin >> a[i]; 
  }
  int l[n+10];
  int r[n+10];
  l[0] = a[0];
  r[0] = a[n-1];
  for(int i=1; i<n-1; i++){
     l[i] = min(l[i-1], a[i]);
  }
  for(int i=1; i<n-1; i++){
     r[i] = min(r[i-1], a[n-i-1]);
  }
  
  cout << r[n-2] < endl;
  for(int i=0; i<n-1; i++){
    cout << min(l[i], r[n-3-i]); 
  }
  cout << l[n-2] << endl;
  
}

int main(){
  solve();
  return 0;
}
