Task: | Snakeless path |
Sender: | Nallue |
Submission time: | 2024-10-21 17:26:59 +0300 |
Language: | C++ (C++11) |
Status: | READY |
Result: | TIME LIMIT EXCEEDED |
test | verdict | time | |
---|---|---|---|
#1 | ACCEPTED | 0.00 s | details |
#2 | ACCEPTED | 0.00 s | details |
#3 | ACCEPTED | 0.00 s | details |
#4 | ACCEPTED | 0.00 s | details |
#5 | ACCEPTED | 0.00 s | details |
#6 | ACCEPTED | 0.00 s | details |
#7 | ACCEPTED | 0.00 s | details |
#8 | ACCEPTED | 0.00 s | details |
#9 | ACCEPTED | 0.00 s | details |
#10 | ACCEPTED | 0.00 s | details |
#11 | ACCEPTED | 0.00 s | details |
#12 | ACCEPTED | 0.00 s | details |
#13 | ACCEPTED | 0.00 s | details |
#14 | ACCEPTED | 0.00 s | details |
#15 | ACCEPTED | 0.00 s | details |
#16 | ACCEPTED | 0.00 s | details |
#17 | ACCEPTED | 0.00 s | details |
#18 | ACCEPTED | 0.01 s | details |
#19 | ACCEPTED | 0.00 s | details |
#20 | ACCEPTED | 0.00 s | details |
#21 | ACCEPTED | 0.00 s | details |
#22 | ACCEPTED | 0.00 s | details |
#23 | ACCEPTED | 0.00 s | details |
#24 | ACCEPTED | 0.00 s | details |
#25 | ACCEPTED | 0.00 s | details |
#26 | ACCEPTED | 0.00 s | details |
#27 | ACCEPTED | 0.00 s | details |
#28 | ACCEPTED | 0.00 s | details |
#29 | ACCEPTED | 0.00 s | details |
#30 | ACCEPTED | 0.00 s | details |
#31 | ACCEPTED | 0.00 s | details |
#32 | ACCEPTED | 0.00 s | details |
#33 | ACCEPTED | 0.00 s | details |
#34 | ACCEPTED | 0.01 s | details |
#35 | ACCEPTED | 0.00 s | details |
#36 | ACCEPTED | 0.00 s | details |
#37 | ACCEPTED | 0.00 s | details |
#38 | ACCEPTED | 0.01 s | details |
#39 | ACCEPTED | 0.00 s | details |
#40 | ACCEPTED | 0.00 s | details |
#41 | ACCEPTED | 0.00 s | details |
#42 | ACCEPTED | 0.00 s | details |
#43 | ACCEPTED | 0.00 s | details |
#44 | ACCEPTED | 0.02 s | details |
#45 | ACCEPTED | 0.00 s | details |
#46 | ACCEPTED | 0.01 s | details |
#47 | ACCEPTED | 0.00 s | details |
#48 | ACCEPTED | 0.02 s | details |
#49 | ACCEPTED | 0.00 s | details |
#50 | ACCEPTED | 0.01 s | details |
#51 | ACCEPTED | 0.01 s | details |
#52 | ACCEPTED | 0.01 s | details |
#53 | ACCEPTED | 0.01 s | details |
#54 | ACCEPTED | 0.31 s | details |
#55 | ACCEPTED | 0.01 s | details |
#56 | ACCEPTED | 0.04 s | details |
#57 | ACCEPTED | 0.00 s | details |
#58 | ACCEPTED | 0.31 s | details |
#59 | ACCEPTED | 0.00 s | details |
#60 | ACCEPTED | 0.39 s | details |
#61 | ACCEPTED | 0.01 s | details |
#62 | ACCEPTED | 0.01 s | details |
#63 | ACCEPTED | 0.26 s | details |
#64 | ACCEPTED | 0.01 s | details |
#65 | ACCEPTED | 0.13 s | details |
#66 | ACCEPTED | 0.01 s | details |
#67 | ACCEPTED | 0.01 s | details |
#68 | ACCEPTED | 0.31 s | details |
#69 | ACCEPTED | 0.00 s | details |
#70 | TIME LIMIT EXCEEDED | -- | details |
#71 | TIME LIMIT EXCEEDED | -- | details |
#72 | TIME LIMIT EXCEEDED | -- | details |
#73 | TIME LIMIT EXCEEDED | -- | details |
#74 | TIME LIMIT EXCEEDED | -- | details |
#75 | ACCEPTED | 0.23 s | details |
#76 | TIME LIMIT EXCEEDED | -- | details |
#77 | ACCEPTED | 0.12 s | details |
#78 | TIME LIMIT EXCEEDED | -- | details |
#79 | ACCEPTED | 0.12 s | details |
#80 | TIME LIMIT EXCEEDED | -- | details |
#81 | TIME LIMIT EXCEEDED | -- | details |
#82 | TIME LIMIT EXCEEDED | -- | details |
#83 | TIME LIMIT EXCEEDED | -- | details |
#84 | TIME LIMIT EXCEEDED | -- | details |
#85 | TIME LIMIT EXCEEDED | -- | details |
#86 | ACCEPTED | 0.23 s | details |
#87 | ACCEPTED | 0.23 s | details |
#88 | TIME LIMIT EXCEEDED | -- | details |
#89 | ACCEPTED | 0.12 s | details |
Code
#include <iostream> #include <vector> #include <queue> #include <stack> #include <set> using namespace std; void BFS(const vector<set<int>>& adj, vector<int>& distances){ queue<int> q; q.push(0); distances[0] = 0; while(not q.empty()){ int x = q.front(); q.pop(); //cout<<q.size()<<endl; for(unsigned long i=0;i<adj.size(); i++){ if(adj[x].find(i) != adj[x].end())continue; if(distances[i]<0){ distances[i]=distances[x]+1; q.push(i); } } } } void Gpath(const vector<set<int>>& adj, const vector<int>& distances, int ini, stack<int>& path){ int x=ini; path.push(x); while (distances[x]!=0){ for(unsigned long i=0;i<adj.size(); i++){ //cout << "."<<endl; if(adj[x].find(i) != adj[x].end())continue; if(distances[i]!=-1 and distances[i]<distances[x]){ path.push(i); x=i; break; } } } } int main(){ int n,m; cin >> n >> m; vector<set<int>> adj(n); for(int i=0;i<n;i++)adj[i].insert(i); //[i]=false; for(int i=0;i<m;i++){ int a,b; cin >> a >> b; adj[a-1].insert(b-1); adj[b-1].insert(a-1); } vector<int> distances(n,-1); BFS(adj, distances); //cout << "hola" << endl; if(distances[n-1]==-1){ cout<<0<<endl; return 0; } stack<int> path; Gpath(adj,distances,n-1,path); //cout << "adeu" << endl; cout<<path.size()<<endl; while(not path.empty()){ cout<<path.top()+1; if(path.top()!=n-1)cout<<" "; path.pop(); } cout <<endl; }
Test details
Test 1
Verdict: ACCEPTED
input |
---|
2 1 1 2 |
correct output |
---|
0 |
user output |
---|
0 |
Test 2
Verdict: ACCEPTED
input |
---|
3 1 1 3 |
correct output |
---|
3 1 2 3 |
user output |
---|
3 1 2 3 |
Test 3
Verdict: ACCEPTED
input |
---|
3 1 1 3 |
correct output |
---|
3 1 2 3 |
user output |
---|
3 1 2 3 |
Test 4
Verdict: ACCEPTED
input |
---|
3 1 1 3 |
correct output |
---|
3 1 2 3 |
user output |
---|
3 1 2 3 |
Test 5
Verdict: ACCEPTED
input |
---|
4 1 1 4 |
correct output |
---|
3 1 3 4 |
user output |
---|
3 1 2 4 |
Test 6
Verdict: ACCEPTED
input |
---|
4 5 1 2 1 3 1 4 2 3 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 7
Verdict: ACCEPTED
input |
---|
4 3 1 2 1 3 1 4 |
correct output |
---|
0 |
user output |
---|
0 |
Test 8
Verdict: ACCEPTED
input |
---|
4 2 1 3 2 3 |
correct output |
---|
2 1 4 |
user output |
---|
2 1 4 |
Test 9
Verdict: ACCEPTED
input |
---|
4 4 1 2 1 4 2 3 3 4 |
correct output |
---|
0 |
user output |
---|
0 |
Test 10
Verdict: ACCEPTED
input |
---|
5 6 1 2 1 4 1 5 2 5 ... |
correct output |
---|
5 1 3 2 4 5 |
user output |
---|
5 1 3 2 4 5 |
Test 11
Verdict: ACCEPTED
input |
---|
5 5 1 2 1 3 1 5 2 5 ... |
correct output |
---|
3 1 4 5 |
user output |
---|
3 1 4 5 |
Test 12
Verdict: ACCEPTED
input |
---|
5 5 1 3 1 4 1 5 3 5 ... |
correct output |
---|
3 1 2 5 |
user output |
---|
3 1 2 5 |
Test 13
Verdict: ACCEPTED
input |
---|
5 6 1 3 1 4 1 5 2 4 ... |
correct output |
---|
5 1 2 3 4 5 |
user output |
---|
5 1 2 3 4 5 |
Test 14
Verdict: ACCEPTED
input |
---|
5 9 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 15
Verdict: ACCEPTED
input |
---|
5 7 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 16
Verdict: ACCEPTED
input |
---|
5 1 1 5 |
correct output |
---|
3 1 4 5 |
user output |
---|
3 1 2 5 |
Test 17
Verdict: ACCEPTED
input |
---|
5 4 1 2 1 3 1 4 1 5 |
correct output |
---|
0 |
user output |
---|
0 |
Test 18
Verdict: ACCEPTED
input |
---|
5 9 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 19
Verdict: ACCEPTED
input |
---|
5 4 1 2 1 3 1 4 1 5 |
correct output |
---|
0 |
user output |
---|
0 |
Test 20
Verdict: ACCEPTED
input |
---|
10 16 1 2 1 3 1 4 1 5 ... |
correct output |
---|
6 1 6 9 8 7 10 |
user output |
---|
5 1 6 2 7 10 |
Test 21
Verdict: ACCEPTED
input |
---|
10 16 1 2 1 3 1 4 1 5 ... |
correct output |
---|
5 1 9 8 7 10 |
user output |
---|
5 1 9 2 7 10 |
Test 22
Verdict: ACCEPTED
input |
---|
10 16 1 2 1 4 1 5 1 6 ... |
correct output |
---|
10 1 3 9 8 7 6 5 4 2 10 |
user output |
---|
5 1 3 4 2 10 |
Test 23
Verdict: ACCEPTED
input |
---|
10 16 1 3 1 4 1 5 1 6 ... |
correct output |
---|
6 1 2 9 8 7 10 |
user output |
---|
5 1 2 3 7 10 |
Test 24
Verdict: ACCEPTED
input |
---|
10 39 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 25
Verdict: ACCEPTED
input |
---|
10 17 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 26
Verdict: ACCEPTED
input |
---|
10 1 1 10 |
correct output |
---|
3 1 9 10 |
user output |
---|
3 1 2 10 |
Test 27
Verdict: ACCEPTED
input |
---|
10 9 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 28
Verdict: ACCEPTED
input |
---|
10 40 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 29
Verdict: ACCEPTED
input |
---|
10 9 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 30
Verdict: ACCEPTED
input |
---|
100 196 1 2 1 3 1 4 1 5 ... |
correct output |
---|
31 1 60 99 98 97 96 95 94 93 92 9... |
user output |
---|
5 1 60 2 72 100 |
Test 31
Verdict: ACCEPTED
input |
---|
100 196 1 2 1 3 1 4 1 5 ... |
correct output |
---|
30 1 99 98 97 96 95 94 93 92 91 9... |
user output |
---|
5 1 99 2 72 100 |
Test 32
Verdict: ACCEPTED
input |
---|
100 196 1 2 1 3 1 4 1 5 ... |
correct output |
---|
98 1 20 99 98 97 96 95 94 93 92 9... |
user output |
---|
5 1 20 2 4 100 |
Test 33
Verdict: ACCEPTED
input |
---|
100 196 1 2 1 3 1 4 1 5 ... |
correct output |
---|
32 1 8 99 98 97 96 95 94 93 92 91... |
user output |
---|
5 1 8 2 71 100 |
Test 34
Verdict: ACCEPTED
input |
---|
100 4910 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 35
Verdict: ACCEPTED
input |
---|
100 197 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 36
Verdict: ACCEPTED
input |
---|
100 248 1 8 1 29 1 53 1 61 ... |
correct output |
---|
3 1 99 100 |
user output |
---|
3 1 2 100 |
Test 37
Verdict: ACCEPTED
input |
---|
100 99 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 38
Verdict: ACCEPTED
input |
---|
100 4888 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 39
Verdict: ACCEPTED
input |
---|
100 99 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 40
Verdict: ACCEPTED
input |
---|
200 396 1 2 1 3 1 4 1 5 ... |
correct output |
---|
60 1 119 199 198 197 196 195 194 ... |
user output |
---|
5 1 119 2 143 200 |
Test 41
Verdict: ACCEPTED
input |
---|
200 396 1 2 1 3 1 4 1 5 ... |
correct output |
---|
58 1 199 198 197 196 195 194 193 ... |
user output |
---|
5 1 199 2 144 200 |
Test 42
Verdict: ACCEPTED
input |
---|
200 396 1 2 1 3 1 4 1 5 ... |
correct output |
---|
195 1 38 199 198 197 196 195 194 1... |
user output |
---|
5 1 38 2 7 200 |
Test 43
Verdict: ACCEPTED
input |
---|
200 396 1 2 1 3 1 4 1 5 ... |
correct output |
---|
61 1 16 199 198 197 196 195 194 1... |
user output |
---|
5 1 16 2 142 200 |
Test 44
Verdict: ACCEPTED
input |
---|
200 19807 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 45
Verdict: ACCEPTED
input |
---|
200 397 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 46
Verdict: ACCEPTED
input |
---|
200 994 1 8 1 29 1 53 1 61 ... |
correct output |
---|
3 1 199 200 |
user output |
---|
3 1 2 200 |
Test 47
Verdict: ACCEPTED
input |
---|
200 199 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 48
Verdict: ACCEPTED
input |
---|
200 19792 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 49
Verdict: ACCEPTED
input |
---|
200 199 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 50
Verdict: ACCEPTED
input |
---|
1000 1996 1 2 1 3 1 4 1 5 ... |
correct output |
---|
288 1 593 999 998 997 996 995 994 ... |
user output |
---|
5 1 593 2 715 1000 |
Test 51
Verdict: ACCEPTED
input |
---|
1000 1996 1 2 1 3 1 4 1 5 ... |
correct output |
---|
282 1 997 999 998 996 995 994 993 ... |
user output |
---|
5 1 997 2 720 1000 |
Test 52
Verdict: ACCEPTED
input |
---|
1000 1996 1 2 1 3 1 4 1 5 ... |
correct output |
---|
975 1 186 999 998 997 996 995 994 ... |
user output |
---|
5 1 186 2 27 1000 |
Test 53
Verdict: ACCEPTED
input |
---|
1000 1996 1 2 1 3 1 4 1 5 ... |
correct output |
---|
295 1 72 999 998 997 996 995 994 9... |
user output |
---|
5 1 72 2 708 1000 |
Test 54
Verdict: ACCEPTED
input |
---|
1000 299999 1 2 1 3 1 4 1 5 ... |
correct output |
---|
3 1 691 1000 |
user output |
---|
3 1 691 1000 |
Test 55
Verdict: ACCEPTED
input |
---|
1000 1997 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 56
Verdict: ACCEPTED
input |
---|
1000 25751 1 8 1 29 1 53 1 61 ... |
correct output |
---|
4 1 999 998 1000 |
user output |
---|
3 1 2 1000 |
Test 57
Verdict: ACCEPTED
input |
---|
1000 999 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 58
Verdict: ACCEPTED
input |
---|
1000 299999 1 2 1 3 1 4 1 5 ... |
correct output |
---|
3 1 832 1000 |
user output |
---|
3 1 832 1000 |
Test 59
Verdict: ACCEPTED
input |
---|
1000 999 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 60
Verdict: ACCEPTED
input |
---|
1000 299999 1 2 1 3 1 4 1 5 ... |
correct output |
---|
3 1 999 1000 |
user output |
---|
3 1 10 1000 |
Test 61
Verdict: ACCEPTED
input |
---|
1000 999 1 1000 2 1000 3 1000 4 1000 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 62
Verdict: ACCEPTED
input |
---|
1000 999 1 1000 2 1000 3 1000 4 1000 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 63
Verdict: ACCEPTED
input |
---|
1000 195765 1 2 1 3 1 4 1 5 ... |
correct output |
---|
4 1 999 997 1000 |
user output |
---|
3 1 6 1000 |
Test 64
Verdict: ACCEPTED
input |
---|
1000 1996 1 2 1 3 1 4 1 5 ... |
correct output |
---|
229 1 922 999 998 997 996 995 994 ... |
user output |
---|
5 1 922 2 773 1000 |
Test 65
Verdict: ACCEPTED
input |
---|
1000 92979 1 6 1 8 1 12 1 18 ... |
correct output |
---|
2 1 1000 |
user output |
---|
2 1 1000 |
Test 66
Verdict: ACCEPTED
input |
---|
1000 1997 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 67
Verdict: ACCEPTED
input |
---|
1000 1997 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 68
Verdict: ACCEPTED
input |
---|
1000 299999 1 2 1 3 1 4 1 5 ... |
correct output |
---|
3 1 885 1000 |
user output |
---|
3 1 885 1000 |
Test 69
Verdict: ACCEPTED
input |
---|
1000 999 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 70
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 199996 1 2 1 3 1 4 1 5 ... |
correct output |
---|
28483 1 59286 99999 99998 99997 9999... |
user output |
---|
(empty) |
Test 71
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 199996 1 2 1 3 1 4 1 5 ... |
correct output |
---|
27969 1 99719 99999 99998 99997 9999... |
user output |
---|
(empty) |
Test 72
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 199996 1 2 1 3 1 4 1 5 ... |
correct output |
---|
97408 1 18510 99999 99998 99997 9999... |
user output |
---|
(empty) |
Test 73
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 199996 1 2 1 3 1 4 1 5 ... |
correct output |
---|
29187 1 7074 99999 99998 99997 99996... |
user output |
---|
(empty) |
Test 74
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 270197 1 861 1 12080 1 39541 1 39686 ... |
correct output |
---|
3 1 99999 100000 |
user output |
---|
(empty) |
Test 75
Verdict: ACCEPTED
input |
---|
100000 199997 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 76
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 284253 1 23553 1 48406 1 56616 1 56899 ... |
correct output |
---|
2 1 100000 |
user output |
---|
(empty) |
Test 77
Verdict: ACCEPTED
input |
---|
100000 99999 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 78
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 3335 1 100000 11 26761 12 80933 41 44903 ... |
correct output |
---|
3 1 99999 100000 |
user output |
---|
(empty) |
Test 79
Verdict: ACCEPTED
input |
---|
100000 99999 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 80
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 89632 1 76350 1 97733 1 100000 2 16314 ... |
correct output |
---|
3 1 99999 100000 |
user output |
---|
(empty) |
Test 81
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 99999 1 100000 2 100000 3 100000 4 100000 ... |
correct output |
---|
0 |
user output |
---|
(empty) |
Test 82
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 99999 1 100000 2 100000 3 100000 4 100000 ... |
correct output |
---|
0 |
user output |
---|
(empty) |
Test 83
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 182210 1 17827 1 55463 1 98875 1 100000 ... |
correct output |
---|
3 1 99999 100000 |
user output |
---|
(empty) |
Test 84
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 199996 1 2 1 3 1 4 1 5 ... |
correct output |
---|
22685 1 92190 99999 99998 99997 9999... |
user output |
---|
(empty) |
Test 85
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 244084 1 33037 1 48376 1 94522 1 100000 ... |
correct output |
---|
3 1 99999 100000 |
user output |
---|
(empty) |
Test 86
Verdict: ACCEPTED
input |
---|
100000 199997 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 87
Verdict: ACCEPTED
input |
---|
100000 199997 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 88
Verdict: TIME LIMIT EXCEEDED
input |
---|
100000 22805 1 100000 2 29973 7 38479 7 77260 ... |
correct output |
---|
3 1 99999 100000 |
user output |
---|
(empty) |
Test 89
Verdict: ACCEPTED
input |
---|
100000 99999 1 2 1 3 1 4 1 5 ... |
correct output |
---|
0 |
user output |
---|
0 |