#include <stdio.h> #include<math.h> int x, y, P, Q, i, a[10000], index, m, n, answer; int f(int q, int p) { int t; while (q != 0 && p != 0) { t = q % p; q = p; p = t; } if (q == x)return 1; else return 0; } int main() { while (scanf("%d%d", &x, &y) != EOF) { index = 0; answer = 0; for (i = x; i <= sqrt(y*x); i += x) { if (y%i == 0) { a[index] = i; index++; } } if (index == 0) { printf("0\n"); continue; } for (i = 0; i < index; i++) { m = a[i]; n = x * y / m; if (f(n, m)) { if (m != n)answer += 2; else answer++; } } printf("%d\n", answer); } } |
Double click to view unformatted code.