This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#pragma GCC optimize("O3,unroll-loops")
#pragma GCC target("avx,popcnt,sse4,abm")
#include<bits/stdc++.h>
//#pragma GCC target("popcnt")
using namespace std;
//#define int long long
#define X first
#define Y second
int G;int H;
int ttt;
int ek(int a,int b){
if(a<b){return ek(b,a);}
if(b==1){return a;}
return ek(a/b,b);
}
vector<pair<int,int>>co;
void solve(){
cin>>G>>H;
/*
for(int i=1;i<=3000;i++){
for(int j=1;j<=4000;j++){
if(ek(i*G,j*G)==H&&__gcd(i,j)==1){
cout<<i*G<<" "<<j*G<<endl;return;
}
}
}*/
for(int i=0;i<co.size();i++){
int a=G*co[i].first;int b=G*co[i].second;
if(ek(a,b)==H){
cout<<a<<" "<<b<<endl;return;
}
}
}
int dp[2000006];
signed main()
{
cin.tie(0);
ios_base::sync_with_stdio(0);
for(int i=1;i<=41;i++){
for(int j=1;j<=41;j++){
if(__gcd(i,j)==1){
co.push_back({i,j});
}
}
}
cin>>ttt;
while(ttt--)solve();
}
Compilation message (stderr)
euklid.cpp: In function 'void solve()':
euklid.cpp:30:14: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
30 | for(int i=0;i<co.size();i++){
| ~^~~~~~~~~~
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |