Problem:
GCD and LCM

Write a program which computes the greatest common divisor (GCD) and the least common multiple (LCM) of given a and b.

Input

Input consists of several data sets. Each data set contains a and b separated by a single space in a line. The input terminates with EOF.

Constraints

0 < a, b ≤ 2,000,000,000

LCM(a, b) ≤ 2,000,000,000

The number of data sets ≤ 50

Output

For each data set, print GCD and LCM separated by a single space in a line.

Sample Input

8 6
50000000 30000000

Output for the Sample Input

2 24
10000000 150000000

Solution in PHP (judge verdict: Accepted)

<?php
$fp = fopen('php://stdin', 'r');
while (feof($fp) == false) {
  $line = fgets($fp);
  if ($line == "") continue;
  $nums = explode(' ', $line);
  //GCDの計算
  $min_k = array_search(min($nums), $nums);   //値が小さい方のキー
  $max_k = $min_k == 0 ? 1 : 0;   //値が大きい方のキー
//  echo "min_k = $min_k".PHP_EOL;
//  echo "max_k = $max_k".PHP_EOL;
  for ($i=1; $i<=min($nums); $i++) {
    if ($nums[$min_k] % $i == 0) {
      if ($nums[$max_k] % ($nums[$min_k] / $i) == 0) {
        echo $nums[$min_k] / $i.' '; 
        break;
      }   
    }   
  }
  //LCMの計算
  $n = 1;
  while (true) {
    if (($nums[$max_k] * $n) % $nums[$min_k] == 0) {
      echo $nums[$max_k] * $n.PHP_EOL;
      break;
    }   
    $n++;
  }
}