# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1268679 | SmuggingSpun | Lutrija (COCI19_lutrija) | C++20 | 51 ms | 328 KiB |
#include<bits/stdc++.h>
#define taskname "B"
using namespace std;
typedef long long ll;
bool is_prime(ll n){
if(n == 2 || n == 3){
return true;
}
if(n < 2 || (~n & 1LL) || n % 3 == 0){
return false;
}
for(ll k = 5; k * k <= n; k += 6){
if(n % k == 0 || n % (k + 2) == 0){
return false;
}
}
return true;
}
bitset<20>vis;
vector<int>path;
vector<ll>pr(1, 2);
ll a, b;
void dfs(int s){
vis[s] = true;
path.emplace_back(s);
if(pr[s] == b){
cout << path.size() << "\n";
for(int& x : path){
cout << pr[x] << " ";
}
exit(0);
}
for(int i = 0; i < pr.size(); i++){
if(!vis[i] && is_prime(abs(pr[i] - pr[s]))){
dfs(i);
}
}
path.pop_back();
}
int main(){
ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
if(fopen(taskname".inp", "r")){
freopen(taskname".inp", "r", stdin);
}
cin >> a >> b;
for(int i = -2; i < 3; i++){
if(is_prime(a + i)){
pr.emplace_back(a + i);
}
if(is_prime(b + i)){
pr.emplace_back(b + i);
}
}
sort(pr.begin(), pr.end());
pr.resize(unique(pr.begin(), pr.end()) - pr.begin());
vis.reset();
for(int i = 0; i < pr.size(); i++){
if(pr[i] == a){
dfs(i);
}
}
cout << -1;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |