답안 #448194

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
448194 2021-07-29T08:44:06 Z Apiram Euklid (COCI20_euklid) C++14
4 / 110
1000 ms 312 KB
#include<bits/stdc++.h>
using namespace std;
int64_t solve(int a,int b){
	if (a==1){
		return b;
	}
	if (b==1)return a;
	if (a<b)solve(b/a,a);
	else
	return solve(a/b, b);
}
int main(){
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int test;cin>>test;
while(test--){
	int64_t g,h;
	cin>>g>>h;
	if (g==1){
		cout<<1<<" "<<h<<endl;
		continue;
	}
	else if (g==h){
		cout<<g<<" "<<h<<endl;
		continue;
	}
	vector<pair<int,int>>ans;
	for (int i = g;i<=200000;i+=g){
		for (int j =g;j<=i;j+=g){
			if (__gcd(i,j)==g){
				if (solve(i,j)==h){
					ans.push_back({i,j});
					break;
				}			
			}
		}
		if (!ans.empty())break;
	}
	cout<<ans[0].first<<" "<<ans[0].second<<endl;
}
return 0;}

Compilation message

euklid.cpp: In function 'int64_t solve(int, int)':
euklid.cpp:8:15: warning: control reaches end of non-void function [-Wreturn-type]
    8 |  if (a<b)solve(b/a,a);
      |          ~~~~~^~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Correct 1 ms 312 KB Output is correct
5 Correct 1 ms 204 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1074 ms 204 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1082 ms 204 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1096 ms 204 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1096 ms 204 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Correct 1 ms 312 KB Output is correct
5 Correct 1 ms 204 KB Output is correct
6 Execution timed out 1074 ms 204 KB Time limit exceeded
7 Halted 0 ms 0 KB -