uva 11388 GCD LCM题解

题意:输入两个数G,L,找出两个数a,b,使得gcd(a,b)=G,lcm(a,b)=L。有多解输出a最小的那个。无解输出-1。

嗯,这是一道值得思考5s的题目。

L%G==0即有解,否则无解。

有解的话我们让a=G,b=L。这样a一定是最小,且合法。

 1 #include<cstdio>
 2 int T,G,L;
 3 int main()
 4 {
 5     scanf("%d",&T);
 6     while(T--)
 7     {
 8         scanf("%d%d",&G,&L);
 9         if(L%G) printf("-1\n");
10         else printf("%d %d\n",G,L);
11     }
12     return 0;
13 }

 

posted @ 2015-03-01 21:01  lowsfish  阅读(132)  评论(0编辑  收藏  举报