比赛 20160303 评测结果 AAAAAAAATT
题目名称 Hankson的趣味题 最终得分 80
用户昵称 NVIDIA 运行时间 3.102 s
代码语言 C++ 内存使用 0.31 MiB
提交时间 2016-03-03 20:22:10
显示代码纯文本
/*
题目评论找的质因数分解
*/

#include<bits/stdc++.h>
int n,a[2],b[2],x,y,z,s;
inline int gcd(int a, int b) 
{
    return a?gcd(b%a,a):b;//三目运算符
}
int main() {
    freopen("son.in", "r", stdin);
    freopen("son.out", "w", stdout);
    scanf("%d", &n);
    for(int i=0; i<n; i++) 
	{
        scanf("%d%d",a,a+1);
        scanf("%d%d",b,b+1);
        s=0; 
		z=(int)sqrt((double)b[1]);//声明写法
        for(x=1;x<=z;x++) 
		{
            if(gcd(x, a[0])==a[1]&&gcd(x,b[0])*b[1]==x*b[0])s++;
            y=b[1]/x; 
			if(b[1]%x||x==y||!y)continue;
            if(gcd(y,a[0])==a[1]&&gcd(y,b[0])*b[1]==y*b[0])s++;
        }
        printf("%d\n", s);
    }
    return 0;
}