Submission #872175

#TimeUsernameProblemLanguageResultExecution timeMemory
872175SalihSahinEuklid (COCI20_euklid)C++14
20 / 110
1091 ms348 KiB
#include<bits/stdc++.h> #define pb push_back #define mp make_pair #define int long long using namespace std; const int N = 4e10 + 5; const int mod = 1e9+7; const int inf = 1e18 + 10; const int L = 20 * 20 * 20; int gcd(int a, int b){ if(a < b) swap(a, b); if(b == 0) return a; return gcd(b, a%b); } int R(int a, int b){ if(a < b) swap(a, b); if(b == 1) return a; return R(a/b, b); } int32_t main(){ ios_base::sync_with_stdio(false); cin.tie(0); int t; cin>>t; while(t--){ int g, h; cin>>g>>h; int a = g; while(h*h > a) a *= h; int a1 = 0, a2 = 0; for(int i = g; i <= N; i += g){ //int l = i * h / g * g - g; //for(int j = l; j < i * (h + 1); j += g){ if(gcd(i, a) == g && R(i, a) == h){ a1 = i, a2 = a; break; } //} //if(a1 > 0) break; } cout<<a1<<" "<<a2<<endl; } /* vector<pair<int, int> > test; for(int i = 100; i < 300; i++){ for(int j = 2; j < 6; j++){ test.pb(mp(i, j)); } } for(auto itr: test){ int g = itr.first, h = itr.second; int a1 = 0, a2 = 0; for(int i = g; i <= N; i += g){ int l = i * h / g * g - g; for(int j = l; j < i * (h + 1); j += g){ if(gcd(i, j) == g && R(i, j) == h){ a1 = i, a2 = j; break; } } if(a1 > 0) break; } cout<<g<<" "<<h<<" -> "<<a1<<" "<<a2<<endl; } */ 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...