Hankson的趣味题

code

#include<algorithm>
#include<iostream>
#include<cstdio>
using namespace std;
int gcd(int a,int b){
	return b==0?a:gcd(b,a%b);
}
int main(){
	ios::sync_with_stdio(false);
	int a0,a1,b0,b1,i,ans,k;
	cin>>k;
	while(k--){
		//TODO
		ans=0;
		cin>>a0>>a1>>b0>>b1;
		for(i=1;i*i<=b1;i++){
			//TODO
			if(b1%i==0){
				int x=i;
				if(gcd(a0,x)==a1&&b0*x==b1*gcd(b0,x)){
					ans++;
				}
				if(i*i!=b1){
					x=b1/i;
					if(gcd(a0,x)==a1&&b0*x==b1*gcd(b0,x)){
						ans++;
					}
				}
			}
		}
		cout<<ans<<'\n';
	}
	return 0;
}
posted @ 2022-01-29 13:26  ethon-wang  阅读(36)  评论(0编辑  收藏  举报