Submission #374492

#TimeUsernameProblemLanguageResultExecution timeMemory
374492topovikEuklid (COCI20_euklid)C++14
20 / 110
10 ms7276 KiB
#include <bits/stdc++.h> #define f first #define s second #define pb push_back using namespace std; typedef long long ll; typedef long double ld; const int N = 1e3 + 100; int val[N][N]; int f(int x, int y) { if (x < y) swap(x, y); if (y == 1) return x; if (val[x][y] != 0) return val[x][y]; else return val[x][y] = f(x / y, y); } int main() { int t; cin >> t; while (t--) { ll x, y; cin >> x >> y; if (x == y) { cout << x << " " << x << endl; continue; } if (y == 2) { cout << x << " " << 2 * x << endl; continue; } if (x == y * y) { cout << x << " " << x * y << endl; continue; } int l = -1, r = -1; for (int i = 1; i < N; i++) for (int j = 1; j < N; j++) if (__gcd(i, j) == 1 && f(i * x, j * x) == y) {l = i, r = j;break;} cout << l << " " << r << endl; } }
#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...