Submission #1370227

#TimeUsernameProblemLanguageResultExecution timeMemory
1370227FaresSTHLutrija (COCI19_lutrija)C++20
21 / 70
2094 ms456 KiB
#include"bits/stdc++.h"
using namespace std;
using ll=long long;
#define S second
#define F first
bool prime(ll x){
    if(x<2)return 0;
    if(x==2)return 1;
    if(x%2==0)return 0;
    for(ll i=3;i*i<=x;i+=2)if(x%i==0)return 0;
    return 1;
}
int main(){
    cin.tie(0)->sync_with_stdio(0);
    ll a,b;
    cin>>a>>b;
    bool swp=0;
    if(a>b)swap(a,b),swp=1;
    vector<ll>res={a};
    if(a!=2){
        if(prime(a-2))res.push_back(2),a=2;
        else{
            bool alp=1;
            for(ll i=a+2;i<=b;i+=2){
                if(prime(i))res.push_back(i);
                else alp=0;
            }
            if(!alp)return cout<<-1,0;
        }
    }
    if(a==2){
        if(prime(b-a))res.push_back(b);
        else if(prime(b+2)){
            res.push_back(b+2);
            res.push_back(b);
        }
        else return cout<<-1,0;
    }
    if(swp)reverse(res.begin(),res.end());
    cout<<res.size()<<'\n';
    for(ll i:res)cout<<i<<' ';
}
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...