测试点信息
一个很逊的方法(感觉就被我做成了模拟),有好方法可以告诉我因为我很拉坤别喷我
代码如下
#include <bits/stdc++.h>
using namespace std;
int ans=0;
int gcd(int x,int y)
{
while(y^=x^=y^=x%=y);
return x;
}
int lcm(int x,int y)
{
return x*y/gcd(x,y);
}
int main(){
int a,b;
cin>>a>>b;
int k=a*b;
for(int i=2;i*i<=k;i++)
if((a*b)%i==0)
>>if(gcd((a*b)/i,i)==a&&lcm((a*b)/i,i)==b) ans++;
cout<<ans*2;
return 0;
}
球球各位大佬帮忙看看,谢谢