NC16691. [NOIP2001]最大公约数和最小公倍数问题
描述
输入描述
2个正整数x0,y0
输出描述
1个数,表示求出满足条件的P,Q的个数
示例1
输入:
3 60
输出:
4
Python3 解法, 执行用时: 48ms, 内存消耗: 4524K, 提交时间: 2022-04-10 16:31:03
import math x0, y0 = map(int, input().split()) a_b = x0 * y0 cnt = 0 for i in range(2, a_b): j = int(a_b / i ) if a_b % i == 0 and math.gcd(i,j) == x0: cnt += 1 print(cnt)
C++(clang++11) 解法, 执行用时: 3ms, 内存消耗: 376K, 提交时间: 2020-11-03 15:48:06
#include<bits/stdc++.h> using namespace std; int x,y,i=1,j,s; int main() { cin>>x>>y; for(;i<=x*y;i++) { if(x*y%i==0&&__gcd(i,x*y/i)==x)s++; }cout<<s; }
C++14(g++5.4) 解法, 执行用时: 2ms, 内存消耗: 492K, 提交时间: 2020-10-08 08:38:46
#include<bits/stdc++.h> using namespace std; int x,y,i=1,j,s; main() { cin>>x>>y; for(;i<=x*y;i++) { if(x*y%i==0&&__gcd(i,x*y/i)==x)s++; }cout<<s; }