洛谷 P1029 [NOIP 2001 普及组] 最大公约数和最小公倍数问题
AcCode:
#include<iostream>
using namespace std;
int gcd(int a, int b){
while(b){
int t = a % b;
a = b;
b = t;
}
return a;
}
int main(){
int P, Q, ans = 0;
cin >> P >> Q;
int s = P * Q;
for(int i = P; i <= s / i; i++) if(s % i == 0 && gcd(i, s / i) == P) ans++;
ans *= 2;
if(P == Q) ans--;
cout << ans;
return 0;
}