Submission #9228

#TimeUsernameProblemLanguageResultExecution timeMemory
9228effservYour life (kriii2_Y)C++98
0 / 4
1000 ms262144 KiB
/* 문제 */ // 2014. #include <cstdio> #include <cmath> #include <algorithm> #include <vector> #include <queue> #include <functional> #include <cstring> #include <string> #include <map> using namespace std; #define maxS 100001 vector <int> x[maxS]; queue <int> qu; int N, M , ans = 2100000000; bool visited[maxS]; int cmp1(int i, int j) { return i > j; } void bfs() { qu.push(1); int m = 0; while (!qu.empty()) { int tmp = qu.front(); qu.pop(); int sz = x[tmp].size(); for (int i = 0; i < sz; i++) { if (x[tmp][i] == N) { ans = m + 1; return; } qu.push(x[tmp][i]); } m++; } return; } int main() { scanf("%d%d", &N, &M); for (int i = 0; i < M; i++) { int n, m; scanf("%d%d", &n, &m); x[n].push_back(m); } for (int i = 1; i <= N; i++) sort(x[i].begin(), x[i].end(),cmp1); bfs(); if (ans == 2100000000) printf("-1\n"); else printf("%d\n", ans); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...