#include <bits/stdc++.h>
using namespace std;
const long long MOD = 1000000007;
long long GCD(long long a, long long b) {
  if (b == 0) {
    return a;
  } else {
    return GCD(b, a % b);
  }
}
long long LCM(long long a, long long b) { return (a * b) / GCD(a, b); }
long long bpow(long long x, long long v) {
  if (v == 0) return 1 % MOD;
  if (v % 2 == 1) return (x * bpow(x, v - 1)) % MOD;
  long long r = bpow(x, v / 2);
  return (r * r) % MOD;
}
int main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  long long n, y = 0, z, t, g = 0, x = INT_MIN;
  cin >> n;
  vector<long long> v;
  for (long long i = 0; i < n; i++) {
    cin >> t;
    v.push_back(t);
  }
  for (long long i = 0; i < n; i++) {
    if (x < v[i]) {
      x = v[i];
    }
  }
  for (long long i = 0; i < n; i++) {
    v[i] = x - v[i];
    g = GCD(g, v[i]);
  }
  z = g;
  for (long long i = 0; i < n; i++) {
    y += v[i] / z;
  }
  cout << y << " " << z;
  return 0;
}
