Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- void dfs(int v, int **Array, int n, int *Array1)
- {
- Array1[v] = 1;
- for (int i = 0; i < n; i++)
- {
- if (Array[v][i] == 1 && Array1[i] == 0)
- dfs(i, Array, n, Array1);
- }
- }
- int color[N];
- void dfs(int v)
- {
- color[v] = 1;
- for(int i=0; i < N; i++)
- {
- if(g[v][i] != -1 && color[i] == 1)
- cycle_find = true;
- color[v] = 2;
- }
- }
- int main()
- {
- //freopen("input.txt", "r", stdin);
- //freopen("output.txt", "w", stdout);
- int n;
- cin >> n;
- int **Array = new int *[n];
- for (int i = 0; i < n; i++)
- Array[i] = new int [n];
- int *Array1 = new int [n];
- for (int i = 0; i < n; i++)
- {
- for (int j = 0; j < n; j++)
- cin >> Array[i][j];
- Array1[i] = 0;
- }
- dfs(n - 1, Array, n, Array1);
- for (int i = 0; i < n; i++)
- {
- if (Array1[i] == 0)
- {
- cout << "NO" << endl;
- return 0;
- }
- }
- cout << "YES" << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement