C++ 3WA求助
查看原帖
C++ 3WA求助
764343
xiongqiwu10楼主2022/8/24 11:16
#include<iostream>
#include<cmath>
using namespace std;

int gcd(int a,int b) {
    int r;
    while(b>0) {
        r=a%b;
        a=b;
        b=r;
    }
    return a;
}

int lcm(int a,int b) {
    int r,c=a,d=b;
    while(b>0) {
        r=a%b;
        a=b;
        b=r;
    }
    return c*d/a;
}

int main()
{
	int x=0,y=0,a=0,sum=0,f=0,gc=0,lc=0;
	cin>>x>>y;
	if(y%x!=0 || x>y)
	{
		return 0;
	}
	else if(y==x)
	{
		cout<<"1";
		return 0;
	}
	a=y/x;
	for(int i=1;i<=sqrt(a);i++)
	{
		gc=gcd(y/i,y/(a/i));
		lc=lcm(y/i,y/(a/i));
		if(a%i==0 && x==gc && y==lc)
		{
			sum++;
		}
		if(i*i==a)
		{
			f=1;
		}
	}
	sum=sum*2-f;
	cout<<sum;
	return 0;
}
2022/8/24 11:16
加载中...