x | y 是指y%x==0
Gcd(a,b)表示a,b的最大公约数
Lcm(a,b)表示a,b的最小公倍数
ab=Gcd(a,b)*Lcm(a,b)
求最大公约数:法一:Gcd(a,b)=Gcd(b,a%b)
法二:
如果a==b,Gcd(a,b)=a;
如果a,b都是偶数,Gcd(a,b)=Gcd(a/2,b/2);
如果a,b都是奇数,a>b,Gcd(a,b)=Gcd(a-b,b)
如果a奇b偶,Gcd(a,b)=Gcd(a,b/2)
例题:
输入二个正整数x0,y0(2≤x0≤100000,2≤y0≤1000000),求出满足下列条件的正整数P、Q的个数。要求P、Q以x0为最大公约数,以y0为最小公倍数。
就把y0/x0质因数分解,看有几类不同的质因数,平方即可。