hiho week 144 register

Ended

Participants:1096

Verdict:Accepted
Score:100 / 100
Submitted:2017-04-02 16:07:25

Lang:G++

Edit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <iostream>
using namespace std;
long long gcd(long long x, long long y) {
    return y == 0 ? x : gcd(y, x % y);
}
long long countFactor(long long x) {
    long long ans = 0;
    for (long long i = 1; i * i <= x; ++i) {
        if (x % i == 0) {
            ++ans;
            if (i * i != x) ++ans;
        }
    }
    return ans;
}
int main() {
    long long N, M;
    cin >> N >> M;
    long long denom = countFactor(N) * countFactor(M);
    long long numer = countFactor(gcd(N, M));
    long long g = gcd(denom, numer);
    cout << denom / g << ' ' << numer / g << endl;
    return 0;
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX