比赛 |
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;
}