#include <bits/stdc++.h>
using namespace std;
bool cmp(const pair<long long int, long long int> &a,
         const pair<long long int, long long int> &b) {
  if (a.first == b.first) return a.second > b.second;
  return a.first > b.first;
}
int main() {
  long long int n;
  cin >> n;
  pair<long long int, long long int> arr[n];
  for (long long int i = 0; i < n; i++) {
    long long int x;
    cin >> x;
    arr[i] = {x, i};
  }
  long long int k = 1E17;
  sort(arr, arr + n, cmp);
  priority_queue<long long int> pq;
  priority_queue<long long int, vector<long long int>, greater<long long int> >
      pq1;
  for (long long int i = 0; i < n; i++) {
    if (pq.size() == 0) {
      pq.push(arr[i].second);
      pq1.push(arr[i].second);
    } else {
      long long int top = pq.top();
      long long int top1 = pq1.top();
      pq1.push(arr[i].second);
      pq.push(arr[i].second);
      long long int rem = abs(top - arr[i].second);
      rem = max(rem, abs(top1 - arr[i].second));
      if (rem == 0) continue;
      long long int mn = arr[i].first;
      mn /= rem;
      k = min(mn, k);
    }
  }
  cout << k;
  return 0;
}
