hdu 2504 又见GCD(gcd) ( c++)
题目链接: hdu 2504 又见GCD
题目大意: 有三个正整数a,b,c(0<a,b,c<10^6),其中c不等于b。若a和c的最大公约数为b,现已知a和b,求满足条件的最小的c。
代码:
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<algorithm>
using namespace std;
typedef long long ll;
int gcd(int a, int b){
return b == 0 ? a : gcd(b, a % b);
}
int main()
{
int m;
cin >> m;
int a, b;
while(m--){
cin >> a >> b;
for(int i = b * 2; i <= a; i += b){
if(gcd(i, a) == b){
cout << i << endl;
break;
}
}
}
return 0;
}