Submission #578915

# Submission time Handle Problem Language Result Execution time Memory
578915 2022-06-18T07:45:25 Z AGE Lutrija (COCI19_lutrija) C++14
0 / 70
1181 ms 251720 KB
#include<bits/stdc++.h>
#define F first
#define S second
#define int long long
#define pb push_back
using namespace std;
const int N=6e7,M=2e3,mod=1e9+7;
map<int,int>dist,p,okk;
map<int,vector<int>>adj;
int seive[N];
vector<int>primess;

bool is_prime(int x){

    for(int j=0;j<primess.size();j++){

            if(x%primess[j]==0)
                return 0;
    }

    return 1;

}

main(){

    for(int i=2;i<=3e7;i++){

        if(seive[i]==1)
            continue;

        for(int j=i+i;j<=3e7;j+=i)
            seive[j]=1;

    }


    for(int i=2;i<=3e7;i++)
        if(seive[i]==0)
            primess.pb(i);

    vector<int>v;

    int a,b;
    cin>>a>>b;

    v.pb(a);
    v.pb(b);
    v.pb(a-2);
    v.pb(a+2);
    v.pb(b-2);
    v.pb(b+2);

    for(int i=0;i<v.size();i++){

        if(is_prime(v[i])==0||v[i]==0||v[i]==1)
            continue;

        for(int j=0;j<v.size();j++){

            if(v[i]==v[j]||(is_prime(v[j])==0)||v[j]==0||v[j]==1)
                continue;

            int x=abs(v[i]-v[j]);

            if((is_prime(x)==0)||x==0||x==1)
                continue;

            adj[v[i]].pb(v[j]);
            adj[v[j]].pb(v[i]);

        }

    }

    queue<int>q;

    q.push(a);
    dist[a]=1;

    while(!q.empty()){

        int node=q.front();
        q.pop();

        for(auto x:adj[node])
            if(!dist[x])
                dist[x]=1,q.push(x),p[x]=node;

    }

    if(dist[b]==0){

        cout<<"-1"<<endl;
        return 0;

    }

    int node=b;
    vector<int>ans;

    while(node!=a){

        ans.pb(node);
        node=p[node];

    }

    ans.pb(a);
    reverse(ans.begin(),ans.end());

    cout<<ans.size()<<endl;

    for(int i=0;i<ans.size();i++)
        cout<<ans[i]<<" ";
    cout<<endl;

        return 0;
}

Compilation message

lutrija.cpp: In function 'bool is_prime(long long int)':
lutrija.cpp:15:18: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   15 |     for(int j=0;j<primess.size();j++){
      |                 ~^~~~~~~~~~~~~~~
lutrija.cpp: At global scope:
lutrija.cpp:25:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   25 | main(){
      | ^~~~
lutrija.cpp: In function 'int main()':
lutrija.cpp:54:18: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   54 |     for(int i=0;i<v.size();i++){
      |                 ~^~~~~~~~~
lutrija.cpp:59:22: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   59 |         for(int j=0;j<v.size();j++){
      |                     ~^~~~~~~~~
lutrija.cpp:114:18: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  114 |     for(int i=0;i<ans.size();i++)
      |                 ~^~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Incorrect 1138 ms 251596 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 928 ms 251592 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 924 ms 251592 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 903 ms 251604 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 966 ms 251720 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 919 ms 251592 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1181 ms 251680 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1153 ms 251592 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1137 ms 251596 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1162 ms 251644 KB Output isn't correct
2 Halted 0 ms 0 KB -