#include <bits/stdc++.h>
using namespace std;
long long int MOD = 1000000007;
long long int gcd(long long int a, long long int b) {
  if (a == 0) return b;
  return gcd(b % a, a);
}
long long int power1(long long int x, long long int y, long long int p) {
  long long int res = 1;
  x = x % p;
  while (y > 0) {
    if (y & 1) res = (res * x) % p;
    y = y >> 1;
    x = (x * x) % p;
  }
  return res;
}
bool cmp(pair<long long int, long long int> &x,
         pair<long long int, long long int> &y) {
  return x.first > y.first;
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  long long int n, k = 0, sum = 0, m, ans = 0, x, y, t, oc = 0, ec = 0, z;
  long long int c = 0;
  long long int cnt[26] = {0};
  string s;
  vector<long long int> v;
  t = 1;
  while (t--) {
    cin >> n;
    ans = 0;
    long long int a[n];
    vector<pair<long long int, long long int>> vect;
    for (int i = 0; i < n; i++) cin >> a[i];
    sort(a, a + n);
    long long int mini = LLONG_MAX;
    long long int maxi = *max_element(a, a + n);
    for (int i = 1; i < n; i++) {
      if (a[i] != a[i - 1]) {
        mini = min(mini, a[i] - a[i - 1]);
      }
    }
    for (int i = 0; i < n; i++) {
      if ((maxi - a[i]) % mini != 0) {
        mini--;
        i = -1;
      }
    }
    for (int i = 0; i < n; i++) ans += (maxi - a[i]) / mini;
    cout << ans << " " << mini;
  }
}
