#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int N;
vector<int> trees;
int currentDay = 2;
int answer = 0;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
cin>>N;
for(int i=0;i<N;i++){
int tree;
cin>>tree;
trees.push_back(tree);
}
sort(trees.begin(), trees.end(), greater<int>());
for(int i=0;i<N;i++){
answer = max(answer, trees[i] + currentDay++);
}
cout<<answer<<'\n';
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8YWxnb3JpdGhtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IE47CnZlY3RvcjxpbnQ+IHRyZWVzOwppbnQgY3VycmVudERheSA9IDI7CmludCBhbnN3ZXIgPSAwOwoJCmludCBtYWluKCkgewoJaW9zOjpzeW5jX3dpdGhfc3RkaW8oMCk7CgljaW4udGllKDApOwoJY291dC50aWUoMCk7CgkKCWNpbj4+TjsKCWZvcihpbnQgaT0wO2k8TjtpKyspewoJCWludCB0cmVlOwoJCWNpbj4+dHJlZTsKCQkKCQl0cmVlcy5wdXNoX2JhY2sodHJlZSk7Cgl9Cglzb3J0KHRyZWVzLmJlZ2luKCksIHRyZWVzLmVuZCgpLCBncmVhdGVyPGludD4oKSk7CgkKCWZvcihpbnQgaT0wO2k8TjtpKyspewoJCWFuc3dlciA9IG1heChhbnN3ZXIsIHRyZWVzW2ldICsgY3VycmVudERheSsrKTsKCX0KCWNvdXQ8PGFuc3dlcjw8J1xuJzsKCQoJcmV0dXJuIDA7Cn0=