HDU 2053a/b + c/d 2054 又见gcd

题目链接http://acm.hdu.edu.cn/showproblem.php?pid=2503

View Code
 1 #include<stdio.h>

 2 #include<string.h>

 3 __int64 gcd(__int64 a,__int64 b)

 4 {

 5     return b==0?a:gcd(b,a%b);

 6 }

 7 int main()

 8 {

 9     __int64 n,a,b,c,d,t,k,m;

10     scanf("%I64d",&n);

11     while(n--)

12     {

13         scanf("%I64d%I64d%I64d%I64d",&a,&b,&c,&d);

14         t=a*d+b*c;

15         m=b*d;

16         k=gcd(t,m);

17         printf("%I64d %I64d\n",t/k,m/k);

18     }

19     return 0;

20 }

题目链接http://acm.hdu.edu.cn/showproblem.php?pid=2504

View Code
 1 #include<stdio.h>

 2 __int64 gcd(__int64 a,__int64 b)

 3 {

 4     return b==0?a:gcd(b,a%b);

 5 }

 6 int main()

 7 {

 8     __int64 n,a,b,c;

 9     scanf("%d",&n);

10     while(n--)

11     {

12         scanf("%I64d%I64d",&a,&b);

13         for(c=b+1;;c++)

14         {

15             if(b==gcd(a,c))

16                 break;

17         }

18         printf("%I64d\n",c);

19     }

20     return 0;

21 }

你可能感兴趣的:(HDU)