巨佬萌,为什么这样做会有测试点不能通过呢,我自己看了好几遍,实在是找不出原因了
码源如下
#include<stdio.h>
int if_is_maxessential(int n,int m,int essential);
int main(void)
{
int input1,input2,dis1,dis2,ans=0;
scanf("%d %d",&input1,&input2);
for(dis1=2;dis1<=input2;dis1++)
{
if((input1*input2)%dis1==0)
{
dis2=(input1*input2)/dis1;
if(if_is_maxessential(dis1,dis2,input1))
++ans;
}
}
printf("%d",ans);
return 0;
}
int if_is_maxessential(int n,int m,int essential)
{
int min,i,essen;
min=(n<m)?n:m;
for(i=2;i<=min;i++)
{
if( (n%i==0)&&(m%i==0))
essen=i;
}
if(essen==essential)
return 1;
else return 0;
}