#include <bits/stdc++.h>
using namespace std;
int check(vector<int>&a, int n, int size){
int cnt=0;
int mx =-1;
for(int i=0;i<n;i++){
if(a[i]>=size) cnt++;
else cnt=0;
mx=max(mx, cnt);
}
return mx>=size;
}
int main()
{
int n; cin>>n;
vector<int>a(n);
for(int &i:a) cin>>i;
int lo = 1;
int hi = 1e9;
int ans = -1;
while(lo<=hi){
int mid = lo + (hi-lo)/2;
if(check(a, n, mid)){
ans = mid;
lo = mid + 1;
}else{
hi = mid - 1;
}
}
cout<<ans<<endl;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IGNoZWNrKHZlY3RvcjxpbnQ+JmEsIGludCBuLCBpbnQgc2l6ZSl7CiAgICBpbnQgY250PTA7CiAgICBpbnQgbXggPS0xOwogICAgZm9yKGludCBpPTA7aTxuO2krKyl7CiAgICAgICAgaWYoYVtpXT49c2l6ZSkgY250Kys7CiAgICAgICAgZWxzZSBjbnQ9MDsKICAgICAgICAKICAgICAgICBteD1tYXgobXgsIGNudCk7CiAgICB9CiAgICByZXR1cm4gbXg+PXNpemU7Cn0KCmludCBtYWluKCkKewogICAgaW50IG47IGNpbj4+bjsKICAgIAogICAgdmVjdG9yPGludD5hKG4pOwogICAgZm9yKGludCAmaTphKSBjaW4+Pmk7CiAgICAKICAgIGludCBsbyA9IDE7CiAgICBpbnQgaGkgPSAxZTk7CiAgICBpbnQgYW5zID0gLTE7CiAgICAKICAgIHdoaWxlKGxvPD1oaSl7CiAgICAgICAgaW50IG1pZCA9IGxvICsgKGhpLWxvKS8yOwogICAgICAgIAogICAgICAgIGlmKGNoZWNrKGEsIG4sIG1pZCkpewogICAgICAgICAgICBhbnMgPSBtaWQ7CiAgICAgICAgICAgIGxvID0gbWlkICsgMTsKICAgICAgICB9ZWxzZXsKICAgICAgICAgICAgaGkgPSBtaWQgLSAxOwogICAgICAgIH0KICAgIH0KICAgIAogICAgY291dDw8YW5zPDxlbmRsOwoKICAgIHJldHVybiAwOwp9