原题

 全部数据点击下载

代码

#include <iostream>
using namespace std;
long long gcd(long long a, long long b) {
    if (a % b == 0) {
        return b;
    } else {
        return gcd(b, a % b);
    }
}
int main() {
    long long T;
    cin >> T;
    while (T--) {
        long long a, b, t;
        cin >> a >> b;
        if (a < b) {
            swap(a, b);
        }
        t = gcd(a, b);
        cout << t << ' ' << a * b / t;
        if (T >= 1) {
            cout << '\n';
        }
    }
    return 0;
}