题目描述输入两个正整数 xy求出满足下列条件的pq 的个数: pq是正整数。要求 pq以 x 为最大公约数以 y 为最小公倍数。试求:满足条件的所有可能的 pq 的个数。输入格式一行两个正整数 xy。输出格式一行一个数表示求出满足条件的 pq 的个数。样例样例输入 #13 60样例输出 #14c++11实现使运行时间最短
#include
int gcd(int a, int b) { if (b == 0) { return a; } return gcd(b, a % b); }
int lcm(int a, int b) { return a * b / gcd(a, b); }
int main() { int x, y; cin >> x >> y;
int count = 0;
for (int p = x; p <= y; p += x) {
if (y % p == 0 && gcd(p, y / p) == x) {
count++;
}
}
cout << count << endl;
return 0;
}
原文地址: https://www.cveoy.top/t/topic/hGew 著作权归作者所有。请勿转载和采集!