90分求助 大佬帮忙看看哪里错了
查看原帖
90分求助 大佬帮忙看看哪里错了
982937
lb13015989315楼主2023/4/9 15:17
import math

def gcd(x, y):
    if y == 0:
        return x
    return gcd(y, x % y)

n, m = map(int, input().split())
ans = 0
flag = 0
for i in range(1, int(math.sqrt(n*m))+1):
    if n * m % i == 0 and gcd(i, n * m // i) == n:
        ans += 1
        if i == n * m:
            flag = 1
print(ans * 2 - flag) # 最后乘以二是因为只遍历了一半

2023/4/9 15:17
加载中...