C - 又见GCD
HPU专题训练(-1)GCD&&素筛&&快速幂_____C - 又见GCD
Input第一行输入一个n,表示有n组测试数据,接下来的n行,每行输入两个正整数a,b。Output输出对应的c,每组测试数据占一行。 Sample Input
2 6 2 12 4Sample Output
4 8
/*
思路很简单:
只要判断 b==gcd(a,c) 是否成立就行
要满足这个条件:
c>b;应为(c!=b切b是c的约数)
所以说c应该为2b,3b,4b.....一直判断到b==gcd(a,c);
*/
#include<stdio.h>
int gcd(int a,int c)
{
return !c?a:gcd(c,a%c);
}
int main()
{
int a,b,t;
scanf("%d",&t);
while(t--)
{
scanf("%d %d",&a,&b);
int c=b*2;
while(b!=gcd(a,c))
{
c+=b;
}
printf("%d\n",c);
}
return 0;
}