#include <bits/stdc++.h>
using namespace std;
int Num;
char CH[20];
const int inf = 0x3f3f3f3f;
inline long long read() {
  long long x = 0, f = 1;
  char ch = getchar();
  while (ch < '0' || ch > '9') {
    if (ch == '-') f = -1;
    ch = getchar();
  }
  while (ch >= '0' && ch <= '9') {
    x = x * 10 + ch - '0';
    ch = getchar();
  }
  return x * f;
}
inline void P(int x) {
  Num = 0;
  if (!x) {
    putchar('0');
    puts("");
    return;
  }
  while (x > 0) CH[++Num] = x % 10, x /= 10;
  while (Num) putchar(CH[Num--] + 48);
  puts("");
}
long long a[200001];
long long sum = 0;
long long mx = 0;
int main() {
  int n = read();
  for (int i = 1; i <= n; i++) a[i] = read(), sum += a[i], mx = max(a[i], mx);
  n = n - 1;
  long long ans;
  ans = sum / n;
  if (sum % n != 0) ans++;
  cout << max(mx, ans) << endl;
}
