#include <bits/stdc++.h>
using namespace std;
int N,ans=0;
int A[200001],lr[200001]={},rl[200001]={};//lr:l>r rl:r>l
int h[200001];
int main() {
cin>>N;
for(int q=0;q<N;q=q+1){
cin>>A[q];
}
lr[0]=1;
rl[N-1]=1;
for(int q=0;q<=N;q=q+1){
if(lr[q]+1<A[q+1]){
lr[q+1]=lr[q]+1;
}
else{
lr[q+1]=A[q+1];
}
}
for(int q=N-1;q>=0;q=q-1){
if(rl[q]+1<A[q-1]){
rl[q-1]=rl[q]+1;
}
else{
rl[q-1]=A[q-1];
}
}
for(int q=0;q<=N;q=q+1){
if(lr[q]<rl[q]){
h[q]=lr[q];
}
else{
h[q]=rl[q];
}
}
for(int q=0;q<=N;q=q+1){
if(ans<h[q]){
ans=h[q];
}
}
cout<<ans;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCBOLGFucz0wOwppbnQgQVsyMDAwMDFdLGxyWzIwMDAwMV09e30scmxbMjAwMDAxXT17fTsvL2xyOmw+ciBybDpyPmwKaW50IGhbMjAwMDAxXTsKaW50IG1haW4oKSB7CgljaW4+Pk47Cglmb3IoaW50IHE9MDtxPE47cT1xKzEpewoJCWNpbj4+QVtxXTsKCX0KCWxyWzBdPTE7CglybFtOLTFdPTE7Cglmb3IoaW50IHE9MDtxPD1OO3E9cSsxKXsKCQlpZihscltxXSsxPEFbcSsxXSl7CgkJCWxyW3ErMV09bHJbcV0rMTsKCQl9CgkJZWxzZXsKCQkJbHJbcSsxXT1BW3ErMV07CgkJfQoJfQoJZm9yKGludCBxPU4tMTtxPj0wO3E9cS0xKXsKCQlpZihybFtxXSsxPEFbcS0xXSl7CgkJCXJsW3EtMV09cmxbcV0rMTsKCQl9CgkJZWxzZXsKCQkJcmxbcS0xXT1BW3EtMV07CgkJfQoJfQoJZm9yKGludCBxPTA7cTw9TjtxPXErMSl7CgkJaWYobHJbcV08cmxbcV0pewoJCQloW3FdPWxyW3FdOwoJCX0KCQllbHNlewoJCQloW3FdPXJsW3FdOwoJCX0KCX0KCWZvcihpbnQgcT0wO3E8PU47cT1xKzEpewoJCWlmKGFuczxoW3FdKXsKCQkJYW5zPWhbcV07CgkJfQoJfQoJY291dDw8YW5zOwoJcmV0dXJuIDA7Cn0=