记录编号 551039 评测结果 AAAAAAAAAA
题目名称 [NOIP 2009]Hankson的趣味题 最终得分 100
用户昵称 Gravatar夜莺 是否通过 通过
代码语言 C++ 运行时间 1.529 s
提交时间 2020-04-05 11:11:00 内存使用 1.21 MiB
显示代码纯文本
#include<cstdio>
using namespace std;
typedef long long ll;
ll a0,a1,b0,b1,ans;
ll gcd(ll a,ll b){return b?gcd(b,a%b):a;}
inline void work(){
	scanf("%lld%lld%lld%lld",&a0,&a1,&b0,&b1);
	a0=a0/a1;
	b0=b1/b0;
	ans=0;
	for(int i=1;i*i<=b1;i++){
		ll pd=i;
		if(b1%pd==0){
			if(pd%a1==0&&gcd(pd/a1,a0)==1&&gcd(b0,b1/pd)==1){
				ans++;
			}
			if(pd*pd!=b1){
				pd=b1/pd;
				if(pd%a1==0&&gcd(pd/a1,a0)==1&&gcd(b0,b1/pd)==1){
					ans++;
				}
			}
		}
	}
	printf("%lld\n",ans);
}
int main(){
	int T;
	freopen("son.in","r",stdin);
	freopen("son.out","w",stdout);
	scanf("%d",&T);
	while(T--)work();
	return 0;
}