慕用4063026
#include<stdio.h>
//最大公约数
int gcd(int a,int b)
{
if (a > b)
{
a^=b;b^=a;a^=b;
}
return a > 0 ? gcd (b % a, a) : b;
}
//最小公倍数
int lcm(int a, int b)
{
int i;
if (a > b)
{
a^=b;b^=a;a^=b;
}
for (i = b; i % a != 0; i+= b);
return i;
}
int main()
{
int a,b;
while(scanf("%d%d",&a,&b) !=EOF)
{
printf("%d %d\n", gcd(a,b),lcm(a,b));
}
return 0;
}