Submission #337416

#TimeUsernameProblemLanguageResultExecution timeMemory
337416phathnvEuklid (COCI20_euklid)C++11
110 / 110
1 ms384 KiB
#include <bits/stdc++.h>

#define mp make_pair
#define X first
#define Y second

using namespace std;

typedef long long ll;
typedef pair <int, int> ii;

int g, h;

void readInput(){
    cin >> g >> h;
}

ll R(ll a, ll b){
    cerr << "R " << a << ' ' << b << endl;
    if (b == 1)
        return a;
    if (a < b)
        return R(b, a);
    return R(a / b, b);
}

void solve(){
    ll l = 1, r = 1;
    while ((l + g - 1) / g * g > r || l <= g){
        l *= h;
        r = r * h + h - 1;
    }

    ll a = (l + g - 1) / g * g;
    ll b = h * a + g;
    //assert(__gcd(a, b) == g);
    //assert(R(a, b) == h);
    cout << a << ' ' << b << '\n';
}

int main(){
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    int t;
    cin >> t;
    while (t--){
        readInput();
        solve();
    }
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...