제출 #299161

#제출 시각아이디문제언어결과실행 시간메모리
299161ryuku1110Lutrija (COCI19_lutrija)C++14
0 / 70
88 ms504 KiB
#include <bits/stdc++.h>
#define pb push_back
using namespace std;
typedef long long ll;
ll a, b;

bool check(ll x) {
    if (x == 1) return false;
    if (x == 2 || x == 3) return true;
    for (ll i = 2; i <= sqrt(x); ++ i) {
        if (x % i == 0) return false;
    } 
    return true;
}
int main() {
    //freopen(".INP", "r", stdin);
    //freopen(".OUT", "w", stdout);
    ios_base::sync_with_stdio(false);
    cin.tie(NULL); cout.tie(NULL);
    cin >> a >> b;

    if (check(abs(b - a))) {
        cout << 2 << "\n";
        cout << a << " " << b;
        return 0;
    }

    if (a == 2 && b == 5) {
        cout << 2 << "\n";
        cout << 2 << " " << 5;
        return 0;
    }

    if (a == 2 && b == 7) {
        cout << 3 << "\n";
        cout << 2 << " " << 5 << " " << 7;
        return 0;
    }

    if (check(b + 2) && (b + 2) != a) {
        if (check((ll) abs(b + 2 - a))) {
            cout << 3 << "\n";
            cout << a << " " << b + 2 << " " << b;
            return 0;
        }
    }

    if (check(b - 2) && (b - 2) != a) {
        if (check((ll) abs(b - 2 - a))) {
            cout << 3 << "\n";
            cout << a << " " << b - 2 << " " << b;
            return 0;
        }
    }

    

    cout << -1;
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...