#include <iostream>

using namespace std;
int max(int* a,int n){
    int max=0;
for (int i=1;i<n;i++){
  if(a[i]>a[max])
    max=i;
}
return max;
}

int main()
{ int* a;
int n,k,sum,z=1;
int x=0;
bool b=false;
cin >> n;
a=new int[n];
for(int i=0;i<n;i++)
    cin >> a[i];
while(b==false){
        sum=0;
k=max(a,n);
if (k!=n-1){
    if (a[k]==a[k+1]){
            z=1;
            while(a[k]==a[k+z]){
            z++;
            }
                if (a[k]==a[k+1]){
            for (int i=k;i<=k+z-1;i++)
                a[i]--;
                }}else a[k]--;
    }
                else a[k]--;
for(int i=0;i<n;i++){
 sum=a[i]+sum;
}
if(sum==0)
b=true;
x++;

}
cout << x;
}
