#include using namespace std; using ll = int64_t; constexpr ll INF = (1LL << 60) - 1; ll N, M; vector U, V; vector> G; ll K; vector A; void input() { ios::sync_with_stdio(false); cin.tie(nullptr); cin >> N >> M; U.resize(M), V.resize(M); for (ll i=0; i> U[i] >> V[i]; --U[i], --V[i]; } cin >> K; A.resize(N, false); for (ll i=0; i> a; A[a-1] = true; } } vector VISITED; vector C; void bfs(ll start) { C.assign(N*5, INF); C[start] = 0; deque que; que.emplace_back(start); while (!que.empty()) { ll v = que.front(); que.pop_front(); for (const auto& e : G[v]) { if (C[e] != INF) continue; C[e] = C[v] + 1; que.emplace_back(e); } } } void solve() { G.resize(N*5); for (ll i=0; i