Submission #872096

# Submission time Handle Problem Language Result Execution time Memory
872096 2023-11-12T10:01:18 Z Onur_Ilgaz Euklid (COCI20_euklid) C++17
20 / 110
32 ms 600 KB
#include <bits/stdc++.h>
#define fast cin.tie(0)->sync_with_stdio(0);
#define int long long
#define inf ((int)1e18)
#define N 1000005
using namespace std;

void solve(){
	int g, h;
	cin >> g >> h;
	bitset <N> dp; // if(dp[i]) then we can get R'(i, h)
	dp[1] = 1;
	for(int i = 1; i < N; i++) {
		if(!dp[i]) continue;
		if(i >= g) {
			int a = i, b = h; // a >= b garantili
			// cout << a << " " << b << "\n";
			// b'yi g'nin katı yapacağız
			int need = (g - (a * b % g)) % g;
			b = a * b + need;
			// b artık g'nin katı
			swap(a, b);
			if(gcd(a, b) == g) {
				cout << a << " " << b << "\n\n";
				return;
			}
			// a >= b garantili
			need = (g - (a * b % g)) % g;
			b = a * b + need;
			cout << a << " " << b << "\n\n";
			return;
		}
		for(int j = 0; j < h and i * h + j < N; j++) {
			dp[i * h + j] = 1;
		}
	}
	cout << "ERROR\n";
}

int32_t main(){
	fast
	int t=1;
	cin>>t;
	while(t--) solve();
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 600 KB Output is correct
2 Correct 10 ms 348 KB Output is correct
3 Correct 1 ms 348 KB Output is correct
4 Correct 11 ms 568 KB Output is correct
5 Correct 7 ms 572 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 32 ms 344 KB Output is correct
4 Correct 31 ms 344 KB Output is correct
5 Correct 8 ms 344 KB Output is correct
6 Correct 1 ms 348 KB Output is correct
7 Correct 1 ms 344 KB Output is correct
8 Correct 1 ms 348 KB Output is correct
9 Correct 4 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 9 ms 348 KB Output is correct
3 Correct 8 ms 576 KB Output is correct
4 Correct 5 ms 348 KB Output is correct
5 Correct 4 ms 348 KB Output is correct
6 Correct 2 ms 348 KB Output is correct
7 Correct 1 ms 348 KB Output is correct
8 Correct 1 ms 456 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 600 KB Output is correct
2 Correct 10 ms 348 KB Output is correct
3 Correct 1 ms 348 KB Output is correct
4 Correct 11 ms 568 KB Output is correct
5 Correct 7 ms 572 KB Output is correct
6 Correct 0 ms 344 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 32 ms 344 KB Output is correct
9 Correct 31 ms 344 KB Output is correct
10 Correct 8 ms 344 KB Output is correct
11 Correct 1 ms 348 KB Output is correct
12 Correct 1 ms 344 KB Output is correct
13 Correct 1 ms 348 KB Output is correct
14 Correct 4 ms 348 KB Output is correct
15 Correct 0 ms 344 KB Output is correct
16 Correct 9 ms 348 KB Output is correct
17 Correct 8 ms 576 KB Output is correct
18 Correct 5 ms 348 KB Output is correct
19 Correct 4 ms 348 KB Output is correct
20 Correct 2 ms 348 KB Output is correct
21 Correct 1 ms 348 KB Output is correct
22 Correct 1 ms 456 KB Output is correct
23 Incorrect 0 ms 348 KB Output isn't correct
24 Halted 0 ms 0 KB -