Submission #6171517
Source Code Expand
#include <bits/stdc++.h>
#define REP(i, n) for (int i = 0; (i) < (int)(n); ++ (i))
using namespace std;
int solve(int n, int m, const vector<vector<int> > & g, int start, int goal) {
vector<array<int, 3> > dist(n, { INT_MAX, INT_MAX, INT_MAX });
queue<pair<int, int> > que;
auto push = [&](int x, int y, int d) {
if (dist[x][y] != INT_MAX) return;
dist[x][y] = d;
que.emplace(x, y);
};
push(start, 0, 0);
while (not que.empty()) {
int x, y; tie(x, y) = que.front();
que.pop();
for (int z : g[x]) {
push(z, (y + 1) % 3, dist[x][y] + 1);
}
}
if (dist[goal][0] == INT_MAX) return -1;
assert (dist[goal][0] % 3 == 0);
return dist[goal][0] / 3;
}
int main() {
int n, m; cin >> n >> m;
vector<vector<int> > g(n);
REP (i, m) {
int u, v; cin >> u >> v;
-- u; -- v;
g[u].push_back(v);
}
int s, t; cin >> s >> t;
-- s; -- t;
cout << solve(n, m, g, s, t) << endl;
return 0;
}
Submission Info
Submission Time |
|
Task |
E - Hopscotch Addict |
User |
kimiyuki |
Language |
C++14 (GCC 5.4.1) |
Score |
500 |
Code Size |
1031 Byte |
Status |
AC |
Exec Time |
78 ms |
Memory |
6912 KiB |
Judge Result
Set Name |
All |
Sample |
Score / Max Score |
500 / 500 |
0 / 0 |
Status |
|
|
Set Name |
Test Cases |
All |
cycle_01, cycle_02, cycle_03, killer_01, killer_02, killer_03, killer_04, long_01, long_02, random_dense_01, random_dense_02, random_max_01, random_max_02, random_max_03, random_max_04, random_max_05, random_max_06, sample_01, sample_02, sample_03, sample_04, tournament_01, tournament_02 |
Sample |
sample_01, sample_02, sample_03, sample_04 |
Case Name |
Status |
Exec Time |
Memory |
cycle_01 |
AC |
66 ms |
6912 KiB |
cycle_02 |
AC |
66 ms |
6912 KiB |
cycle_03 |
AC |
66 ms |
6912 KiB |
killer_01 |
AC |
44 ms |
896 KiB |
killer_02 |
AC |
43 ms |
768 KiB |
killer_03 |
AC |
63 ms |
6400 KiB |
killer_04 |
AC |
50 ms |
4220 KiB |
long_01 |
AC |
54 ms |
1408 KiB |
long_02 |
AC |
66 ms |
6912 KiB |
random_dense_01 |
AC |
19 ms |
768 KiB |
random_dense_02 |
AC |
39 ms |
768 KiB |
random_max_01 |
AC |
70 ms |
4736 KiB |
random_max_02 |
AC |
71 ms |
4864 KiB |
random_max_03 |
AC |
70 ms |
3968 KiB |
random_max_04 |
AC |
71 ms |
4480 KiB |
random_max_05 |
AC |
64 ms |
3968 KiB |
random_max_06 |
AC |
78 ms |
6528 KiB |
sample_01 |
AC |
1 ms |
256 KiB |
sample_02 |
AC |
1 ms |
256 KiB |
sample_03 |
AC |
1 ms |
256 KiB |
sample_04 |
AC |
1 ms |
256 KiB |
tournament_01 |
AC |
43 ms |
768 KiB |
tournament_02 |
AC |
43 ms |
768 KiB |