#include <bits/stdc++.h>
using namespace std;
template <class T1>
void deb(T1 e1) {
  cout << e1 << endl;
}
template <class T1, class T2>
void deb(T1 e1, T2 e2) {
  cout << e1 << " " << e2 << endl;
}
template <class T1, class T2, class T3>
void deb(T1 e1, T2 e2, T3 e3) {
  cout << e1 << " " << e2 << " " << e3 << endl;
}
void check_time() {}
const int res = 1e5 + 1;
const int ret = 1e6 + 1;
const long long int mod = 1e9 + 7;
int main() {
  set<int> st;
  int n, sum, total, ans;
  scanf("%d", &n);
  for (int i = 0; i < n; i++) {
    int x;
    scanf("%d", &x);
    while (!st.empty()) {
      if (st.count(x)) {
        st.erase(x);
        x++;
      } else {
        break;
      }
    }
    st.insert(x);
  }
  deb(*st.rbegin() + 1 - st.size());
  return 0;
}
