#include using namespace std; #define rep(i,a,b) for(int i=a;i=b;i--) int N; int A[2010]; //----------------------------------------------------------------- int sol(int i) { int t = -1; rep(j, 0, N) { if (j < i) { t = max(t + 1, A[j]); } else { t++; } } rrep(j, N - 1, i) { t = max(t + 1, A[j]); } int s = -1; rep(j, 0, N) s = max(s + 1, A[j]); t = min(s, t); return t; } //----------------------------------------------------------------- int main() { cin >> N; rep(i, 0, N) scanf("%d", &A[i]); int ans = INT_MAX / 2; rep(i, 0, N) ans = min(ans, sol(i)); reverse(A, A + N); rep(i, 0, N) ans = min(ans, sol(i)); cout << ans << endl; }