#include <bits/stdc++.h>
using namespace std;
#define int long long
#define rep(i,a,b) for (int i = a; i <= b; ++i)
const int MAXN = 1e5 + 10;
bool prime(int x) {
if (x%2 == 0 && x!=2) return 0;
for (int i = 3; i*i <= x; i++) if (x%i==0) return 0;
return 1;
}
int32_t main() {
ios_base::sync_with_stdio(0);cin.tie(nullptr);
int a,b;cin >> a >> b;
if ((a==3 && b == 7)|| (a == 7 && b == 3)) {
cout << "3\n" << a << " 5 " << b << '\n';
return 0;
}
if (abs(b-a) == 2) {
cout << "2\n" << a << " " << b << "\n";
} else if (a != 2 && b != 2) {
if (prime(a-2) && prime(b-2)) cout << "3\n" << a << " 2 " << b << '\n';
else cout << "-1\n";
} else if (a == 2) {
if (prime(b+2)) cout << "3\n2 " << b+2 << " " << b << '\n';
else if (prime(b-2)) cout << "3\n2 " << b-2 << " " << b << '\n';
else cout << "-1\n";
} else {
if (prime(a+2)) cout << "3\n2 " << a+2 << " " << a << '\n';
else if (prime(a-2)) cout << "3\n2 " << a-2 << " " << a << '\n';
else cout << "-1\n";
}
return 0;
}
# | 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... |
# | 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... |