水完题四个月了,想起来发帖提醒。
注意一下,测试点T4里面,b不能被a整除;
所以先加个判断
附上我的AC代码
如有帮助,敬请关注
#include<iostream>
#include<math.h>
using namespace std;
int gcd1(int a1,int b1)
{
int r;
if(a1<b1)
swap(a1,b1);
while(a1%b1!=0)
{
r=a1%b1;
a1=b1;
b1=r;
}
return b1;
}
int main()
{
int a,b,c,i,j,p,q,sum;
cin>>a>>b;
sum=0;
if (a>b)
swap(a,b);
if (b%a==0)
{
c=b/a;
for(i=1;i<=c;i++)
{
if(c%i==0)
{
p=i;
q=c/i;
j=gcd1(p,q);
if(j==1)
sum++;
}
}
}
cout<<sum<<endl;
return 0;
}