#include <bits/stdc++.h>
using namespace std;
const int inf = 1000000007;
const long double eps = 1e-9;
const long double pi = 3.141592653589793;
const long double e = 2.718281828459045;
int dp[100005], h[100005];
int n, mmm;
int main() {
  memset(dp, -1, sizeof(dp));
  memset(h, 0, sizeof(h));
  mmm = 0;
  scanf("%d", &n);
  dp[0] = 0;
  dp[n + 1] = 0;
  for (int i = 1; i <= n; i++) {
    scanf("%d", &h[i]);
  }
  for (int i = 1; i <= n; i++) {
    dp[i] = min(dp[i - 1] + 1, h[i]);
  }
  for (int i = n; i >= 1; i--) {
    dp[i] = min(dp[i], dp[i + 1] + 1);
    mmm = max(mmm, dp[i]);
  }
  cout << mmm << endl;
  return 0;
}
