#include <iostream>
#include <vector>
#include <queue> //priority queue
#include <stack>
#include <map> // multimap
#include <set> //multiset
#include <list>
#include <utility> // pair
#include <iterator>
#include <deque> // insertion as both ends
#include <string>
// g1=s.substr(0,n/2);
// g2=s.substr(n/2+n%2,n/2);
#include <cctype> //isaplha
#include <iomanip> // std::setprecision
#include <algorithm> //binary_search,sort, next_permutation in lexicographically greater permutation
#include <cmath>
#include <limits.h> //INT_MIN,INT_MAX
#include <numeric> //iota,partial_sum,inner_product,accumulate(begin,end,num)
#include <functional> //Arithmetic, comparators, logical
#include <bitset>
#define rep(i,a,b) for(int i=a;i<b;i++)
#define rrep(i,b,a) for(int i=b-1;i>=a;i--)
#define fori(a) for(auto i : a )
#define all(a) begin(a), end(a)
#define set(a,b) memset(a,b,sizeof(a))
#define ll long long
#define pb push_back
#define PF push_front //deque
#define mp make_pair
#define pq priority_queue
#define mod 1000000007
#define f first
#define s second
#define pii pair< int, int >
#define tc int t; cin >> t; while(t--)
using namespace std;
string repeat(string s, int n) {
string s1 = s;
for (int i=1; i<n;i++)
s += s1;
return s;
}
string getString(char x) {
string s(1, x);
return s;
}
void optimizeIO(){
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
}
int main(){
optimizeIO();
int n;
cin>>n;
int a[n],b[n];
rep(i,0,n) {cin>>a[i]; b[i]=a[i];}
int max_=*max_element(a,a+n);
rep(i,0,n){
b[i]=max_-b[i];
}
int i=0,ans;
for(;i<n;i++){
if(b[i]!=0){
ans=b[i];
break;
}
}
for(;i<n;i++){
if(b[i]!=0){
ans= __gcd(ans,b[i]);
}
}
ll sword=0;
rep(i,0,n){
sword+=(b[i]/ans);
}
cout<<sword<<" "<<ans<<endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8cXVldWU+IC8vcHJpb3JpdHkgcXVldWUKI2luY2x1ZGUgPHN0YWNrPgojaW5jbHVkZSA8bWFwPiAvLyBtdWx0aW1hcAojaW5jbHVkZSA8c2V0PiAvL211bHRpc2V0CiNpbmNsdWRlIDxsaXN0PiAKI2luY2x1ZGUgPHV0aWxpdHk+IC8vIHBhaXIKI2luY2x1ZGUgPGl0ZXJhdG9yPgojaW5jbHVkZSA8ZGVxdWU+IC8vIGluc2VydGlvbiBhcyBib3RoIGVuZHMKI2luY2x1ZGUgPHN0cmluZz4KLy8gZzE9cy5zdWJzdHIoMCxuLzIpOwovLyBnMj1zLnN1YnN0cihuLzIrbiUyLG4vMik7CiNpbmNsdWRlIDxjY3R5cGU+IC8vaXNhcGxoYQojaW5jbHVkZSA8aW9tYW5pcD4gICAgICAvLyBzdGQ6OnNldHByZWNpc2lvbgojaW5jbHVkZSA8YWxnb3JpdGhtPiAvL2JpbmFyeV9zZWFyY2gsc29ydCwgbmV4dF9wZXJtdXRhdGlvbiBpbiBsZXhpY29ncmFwaGljYWxseSBncmVhdGVyIHBlcm11dGF0aW9uCiNpbmNsdWRlIDxjbWF0aD4KI2luY2x1ZGUgPGxpbWl0cy5oPiAvL0lOVF9NSU4sSU5UX01BWAojaW5jbHVkZSA8bnVtZXJpYz4gIC8vaW90YSxwYXJ0aWFsX3N1bSxpbm5lcl9wcm9kdWN0LGFjY3VtdWxhdGUoYmVnaW4sZW5kLG51bSkKI2luY2x1ZGUgPGZ1bmN0aW9uYWw+ICAvL0FyaXRobWV0aWMsIGNvbXBhcmF0b3JzLCBsb2dpY2FsCiNpbmNsdWRlIDxiaXRzZXQ+CiNkZWZpbmUgcmVwKGksYSxiKSBmb3IoaW50IGk9YTtpPGI7aSsrKQojZGVmaW5lIHJyZXAoaSxiLGEpIGZvcihpbnQgaT1iLTE7aT49YTtpLS0pCiNkZWZpbmUgZm9yaShhKSBmb3IoYXV0byBpIDogYSApCiNkZWZpbmUgYWxsKGEpIGJlZ2luKGEpLCBlbmQoYSkKI2RlZmluZSBzZXQoYSxiKSBtZW1zZXQoYSxiLHNpemVvZihhKSkKCiNkZWZpbmUgbGwgbG9uZyBsb25nIAojZGVmaW5lIHBiIHB1c2hfYmFjawojZGVmaW5lIFBGIHB1c2hfZnJvbnQgLy9kZXF1ZQojZGVmaW5lIG1wIG1ha2VfcGFpcgojZGVmaW5lIHBxIHByaW9yaXR5X3F1ZXVlCiNkZWZpbmUgbW9kIDEwMDAwMDAwMDcKI2RlZmluZSBmIGZpcnN0CiNkZWZpbmUgcyBzZWNvbmQKI2RlZmluZSBwaWkgcGFpcjwgaW50LCBpbnQgPgojZGVmaW5lIHRjIGludCB0OyBjaW4gPj4gdDsgd2hpbGUodC0tKQoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKc3RyaW5nIHJlcGVhdChzdHJpbmcgcywgaW50IG4pIHsKICAgIHN0cmluZyBzMSA9IHM7IAogICAgZm9yIChpbnQgaT0xOyBpPG47aSsrKSAKICAgICAgICBzICs9IHMxOwogICAgcmV0dXJuIHM7IAp9CnN0cmluZyBnZXRTdHJpbmcoY2hhciB4KSB7CiAgICBzdHJpbmcgcygxLCB4KTsgCiAgICByZXR1cm4gczsgICAgCn0gCgp2b2lkIG9wdGltaXplSU8oKXsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOyAKICAgIGNpbi50aWUoTlVMTCk7CiAgICBjb3V0LnRpZShOVUxMKTsKfQppbnQgbWFpbigpewoJb3B0aW1pemVJTygpOwogICAgaW50IG47CiAgICBjaW4+Pm47CiAgICBpbnQgYVtuXSxiW25dOwogICAgcmVwKGksMCxuKSB7Y2luPj5hW2ldOyBiW2ldPWFbaV07fQogICAgaW50IG1heF89Km1heF9lbGVtZW50KGEsYStuKTsKICAgIHJlcChpLDAsbil7CiAgICAgICAgYltpXT1tYXhfLWJbaV07CiAgICB9CiAgICBpbnQgaT0wLGFuczsKICAgIGZvcig7aTxuO2krKyl7CiAgICAgICAgaWYoYltpXSE9MCl7CiAgICAgICAgICAgIGFucz1iW2ldOwogICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICB9CiAgICBmb3IoO2k8bjtpKyspewogICAgICAgIGlmKGJbaV0hPTApewogICAgICAgICAgICBhbnM9IF9fZ2NkKGFucyxiW2ldKTsKICAgICAgICB9CiAgICB9CiAgICBsbCBzd29yZD0wOwogICAgcmVwKGksMCxuKXsKICAgICAgICBzd29yZCs9KGJbaV0vYW5zKTsKICAgIH0KICAgIGNvdXQ8PHN3b3JkPDwiICI8PGFuczw8ZW5kbDsKCXJldHVybiAwOwp9