#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, a, r, maxi;
  bool used[200005];
  scanf("%d %d", &n, &r);
  maxi = n;
  printf("%d\n", r);
  memset(used, false, sizeof used);
  used[r] = true;
  for (int i = 2; i < n; i++) {
    scanf("%d", &a);
    if (used[a]) {
      while (used[maxi]) maxi--;
      printf("%d %d\n", r, maxi);
      used[maxi] = true;
    } else {
      printf("%d %d\n", r, a);
      used[a] = true;
    }
    r = a;
  }
  while (used[maxi]) maxi--;
  printf("%d %d\n", r, maxi);
  return 0;
}
