Submission #205339

# Submission time Handle Problem Language Result Execution time Memory
205339 2020-02-28T15:22:01 Z mraron Lutrija (COCI19_lutrija) C++14
42 / 70
182 ms 376 KB
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
bool ip(ll x) {
	if(x<=1) return false;
	for(ll i=2;i*i<=x;++i) {
		if(x%i==0) return false;
	}
	return true;
}
int main() {
	ll a,b;
	cin>>a>>b;
	vector<ll> lst;
	lst.push_back(a);
	lst.push_back(b);
	lst.push_back(2);
	if(ip(a-2)) lst.push_back(a-2);	
	if(ip(a+2)) lst.push_back(a+2);
	if(ip(b-2)) lst.push_back(b-2);	
	if(ip(b+2)) lst.push_back(b+2);
	map<ll,int> par;
	par[a]=0;
	queue<ll> q;
	q.push(a);
	while(!q.empty()) {
		int fr=q.front();
		q.pop();
		for(auto i:lst) {
			if(ip(abs(fr-i)) && par.count(i)==0) {
				par[i]=fr;
				q.push(i);
			}
		}
	}
	
	if(par.count(b)!=0) {
		vector<ll> ans;
		while(b>0) {
			ans.push_back(b);
			b=par[b];
		}
		reverse(ans.begin(),ans.end());
		cout<<ans.size()<<"\n";
		for(auto i:ans) cout<<i<<" ";
		cout<<"\n";
	}else cout<<"-1\n";
}
# Verdict Execution time Memory Grader output
1 Correct 5 ms 376 KB Output is correct
2 Correct 5 ms 376 KB Output is correct
3 Correct 5 ms 256 KB Output is correct
4 Correct 5 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 5 ms 256 KB Output is correct
2 Correct 5 ms 256 KB Output is correct
3 Correct 5 ms 256 KB Output is correct
4 Correct 5 ms 376 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 5 ms 256 KB Output is correct
2 Correct 5 ms 376 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 5 ms 256 KB Output is correct
2 Correct 5 ms 376 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 5 ms 256 KB Output is correct
2 Correct 5 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 5 ms 256 KB Output is correct
2 Correct 5 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 168 ms 256 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 165 ms 376 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 182 ms 256 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 133 ms 256 KB Output isn't correct
2 Halted 0 ms 0 KB -