#include <bits/stdc++.h>
constexpr int maxN{300000 + 10};
int A[maxN];
int P[maxN];
int go() {
  int n{};
  std::cin >> n;
  for (int i{0}; i < n; i++) std::cin >> A[i];
  std::iota(P, P + n, 0);
  std::sort(P, P + n, [&](int i, int j) {
    if (A[i] < A[j])
      return true;
    else if (A[i] == A[j])
      return i < j;
    return false;
  });
  int ans{static_cast<int>(2e9)};
  for (int t{0}; t < n; t++) {
    int i{P[t]};
    ans = std::min(
        ans,
        std::min((i ? std::min(A[i], A[0]) / i : ans),
                 ((n - 1 - i) ? std::min(A[i], A[n - 1]) / (n - 1 - i) : ans)));
  }
  return ans;
}
int main() {
  std::ios_base::sync_with_stdio(false);
  std::cout << go() << '\n';
  return 0;
}
