分析:水题,但要注意当c取2*b时,a可能被c整除,此时a继续加b继续判断。
#include<iostream> using namespace std; int gcd(int a,int b) { int r; while(b) { r=a%b; a=b; b=r; } return a; } int get(int a,int b) { int c; c=2*b; while(gcd(c,a)!=b) c+=b; return c; } int main() { int n,a,b; cin>>n; while(n--) { cin>>a>>b; cout<<get(a,b)<<endl; } return 0; }
原文地址:http://blog.csdn.net/a809146548/article/details/45293635