제출 #339022

#제출 시각아이디문제언어결과실행 시간메모리
339022A_DLutrija (COCI19_lutrija)C++14
0 / 70
117 ms18700 KiB
#include <bits/stdc++.h>
#define ll long long
#define int long long
#define F first
#define S second
using namespace std;
const ll N=1e3+10;
const ll M=1e7+110;
vector<int> p;
bool b[M];
int sz;
bool ok(ll v)
{
    for(ll i=2;i*i<=v;i++){
        if(v%i==0)return 0;
    }
    return 1;
}
void sev()
{
    for(ll i=2;i<=1e7;i++){
        if(b[i]==0){
            p.push_back(i);
            sz++;
            for(ll j=i*i;j<=1e7;j+=i){
                b[j]=1;
            }
        }
    }
}
main()
{
    sev();
    ll a,b,q;
    q=1;
    while(q--){
        cin>>a>>b;
        if(ok(abs(a-b))){
            cout<<2<<endl;
            cout<<a<<" "<<b<<endl;
        }
        if(abs(a-b)%2==0){
            cout<<-1;
            return 0;
        }
        for(int i=0;i<min((ll)10000,sz);i++){
            ll v=abs(a-p[i]);
            v+=abs(b-p[i]);
            if(ok(v)){
                cout<<3<<endl;
                cout<<a<<" "<<p[i]<<" "<<b<<endl;
                return 0;
            }
        }
        cout<<-1;
    }
}







컴파일 시 표준 에러 (stderr) 메시지

lutrija.cpp:31:6: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   31 | main()
      |      ^
#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...