답안 #491261

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
491261 2021-12-01T07:57:03 Z Nimbostratus Lutrija (COCI19_lutrija) C++17
70 / 70
149 ms 312 KB
#include "bits/stdc++.h"
#define endl '\n'
#define int long long
const int maxn = 2e5 + 5;
const int inf = 2e9;
const int mod = 1e9 + 7;
using namespace std;
using lint = long long;
using pii = pair<int,int>;

lint a, b;
bool rev;
vector<lint> ans;

bool prime(lint x) {
	if(x <= 1)
		return false;
	for(lint i = 2; i * i <= x; i++)
		if(x % i == 0)
			return false;
	return true;
}

signed main() {
	#ifdef Local
	freopen("in.txt", "r", stdin);
	freopen("out.txt", "w", stdout);
	#endif
	ios_base::sync_with_stdio(false);
	cin.tie(nullptr);
	cin >> a >> b;
	if(a > b) {
		swap(a, b);
		rev = true;
	}
	label:;
	ans.push_back(a);
	if(prime(b - a))
		ans.push_back(b);
	else if(a == 2) {
		if(prime(b + 2)) {
			ans.push_back(b + 2);
			ans.push_back(b);
		}
		else {
			cout << -1 << endl;
			return 0;
		}
	}
	else {
		if(prime(a - 2))
			a = 2;
		else if(prime(a + 2)) {
			ans.push_back(a + 2);
			a = 2;
		}
		else {
			cout << -1 << endl;
			return 0;
		}
		goto label;
	}
	if(rev)
		reverse(ans.begin(), ans.end());
	cout << ans.size() << endl;
	for(int x : ans)
		cout << x << " ";

}
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 204 KB Output is correct
2 Correct 0 ms 204 KB Output is correct
3 Correct 0 ms 204 KB Output is correct
4 Correct 0 ms 204 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 0 ms 204 KB Output is correct
3 Correct 1 ms 312 KB Output is correct
4 Correct 0 ms 204 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 204 KB Output is correct
2 Correct 0 ms 204 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 264 KB Output is correct
2 Correct 0 ms 204 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 142 ms 288 KB Output is correct
2 Correct 0 ms 204 KB Output is correct
3 Correct 0 ms 204 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 141 ms 288 KB Output is correct
2 Correct 0 ms 204 KB Output is correct
3 Correct 0 ms 204 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 149 ms 288 KB Output is correct
2 Correct 0 ms 204 KB Output is correct
3 Correct 0 ms 204 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 111 ms 288 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 0 ms 204 KB Output is correct