Submission #205150

#TimeUsernameProblemLanguageResultExecution timeMemory
205150mraronLutrija (COCI19_lutrija)C++14
14 / 70
5 ms376 KiB
#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;
	bool rev=false;
	if(a>b) {
		swap(a,b);
		rev=true;
	}
	vector<ll> ans={-1};
	if(a==2) {
		if(ip(b-2)) {
			ans={a,b-2,b};
		}else if(ip(b+2)) {
			ans={a,b+2,b};
		}else if(ip(b-a)) {
			ans={a,b};
		}
	}else {
		if(ip(a-2) && ip(b-2)) {
			ans={a,2,b};
		}else if(ip(b-a)) {
			ans={a,b};
		}else if(ip(b-(a+2))) {
			ans={a,a+2,b};
		}else if(ip((b-2)-a)) {
			ans={a,b-2,b};
		}
	}
	
	if(rev) reverse(ans.begin(), ans.end());
	if(ans.size()>1) cout<<ans.size()<<"\n";
	for(auto i:ans) cout<<i<<" ";
	cout<<"\n";
}
#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...