Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define _USE_MATH_DEFINES
- #include <string>
- #include <algorithm>
- #include <cmath>
- #include <iomanip>
- #include <fstream>
- #include <deque>
- #include <vector>
- #include <stdlib.h>
- #include <set>
- #include <iostream>
- #include <cctype>
- #include <climits>
- #include <queue>
- using namespace std;
- int main() {
- ifstream in("input.txt");
- ofstream out("output.txt");
- int n, vStart, vFinish;
- int mas[101][101], used[101];
- in >> n;
- for (int i = 0; i < n; i++) {
- used[i] = -1;
- for (int j = 0; j < n; j++) {
- in >> mas[i][j];
- }
- }
- queue <int> q;
- in >> vStart >> vFinish;
- q.push(--vStart);
- used[vStart] = 0;
- while (!q.empty()) {
- int u = q.front();
- q.pop();
- for (int j = 0; j < n; j++) {
- if (mas[u][j] == 1 && used[j] == -1) {
- used[j] = used[u] + 1;
- q.push(j);
- }
- }
- }
- out << used[--vFinish];
- in.close();
- out.close();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement