題意:
輸入兩個整數G,L,找出兩個正整數a,b使得gcd(a ,b)=G,lcm(a ,b)=L,如果有多組解,輸出最小的a的那組,如果沒解,輸出-1。
思路:
比較簡單,如果L%G!=0那麼就沒解,否則既然要輸出最小的a,那麼就直接輸出G,L就行了,a=G的時候最小,同時b=L的話可以保證最小公倍數是L。
#include<stdio.h>
int main ()
{
long long a ,b ,t;
scanf("%lld" ,&t);
while(t--)
{
scanf("%lld %lld" ,&a ,&b);
if(b % a)
{
printf("-1\n");
continue;
}
printf("%lld %lld\n" ,a ,b);
}
return 0;
}