记录编号 |
262485 |
评测结果 |
AAAAAAAAAA |
题目名称 |
[NOIP 2009]Hankson的趣味题 |
最终得分 |
100 |
用户昵称 |
GaoErFu |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.778 s |
提交时间 |
2016-05-21 01:09:21 |
内存使用 |
0.12 MiB |
显示代码纯文本
#include<stdio.h>
#include<math.h>
int gys(int a,int b)
{
int r,i;
if(a>b)
r=a%b;
else {i=a;a=b;b=i;r=a%b;}
while(r!=0)
{a=b;
b=r;
r=a%b;
}
return b;
}
int lcm(int a,int b)
{
return a/gys(a,b)*b;
}
int cc()
{
freopen("son.in","r",stdin);
freopen("son.out","w",stdout);
int a0,a1,b0,b1,n,num=0,i,j,p,q;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d%d%d%d",&a0,&a1,&b0,&b1);
q=sqrt(b1);
for(j=1;j<=q;j++)
{
if(j%a1==0&&b1%j==0&&gys(j,a0)==a1&&lcm(j,b0)==b1)num++;
if(b1%j==0){
p=b1/j;
{if(p!=j&&gys(p,a0)==a1&&lcm(p,b0)==b1)num++;}}
}
printf("%d\n",num);
num=0;
}
return 0;
}
int cx=cc();
int main(){;
}