a10039901 2017-10-25 06:46:52
点我顶贴
收藏
删除
测试点1 Accepted / 1ms / 12508kB
测试点2 Accepted / 1ms / 12508kB
测试点3 Accepted / 1ms / 12508kB
测试点4 Accepted / 0ms / 12508kB
测试点5 Accepted / 1ms / 12508kB
#include<iostream>
using namespace std;
int gcd(int a,int b)
{
if(b==0)return a;
return gcd(b,a%b);
}
int main()
{
int min,max,a,b,n=0;
cin>>a>>b;
if(a>b)
{
max=a;
min=b;
}
else
{
max=b;
min=a;
}
int bei;
if(max%min!=0)//最大公倍数肯定跟最小公因数有倍数关系
{
cout<<'0';
return 0;
}
bei=max/min;
for(int i=1;i*i<=bei;i++)//倍数因式分解 互质和1成立
if(bei%i==0)
if(gcd(bei/i,i)==1)
n++;
cout<<n*2;
}