Advertisement
Guest User

GRANDFATHER PARADOX

a guest
Apr 4th, 2020
172
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.48 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. #define nax 100003
  3.  
  4. using namespace std;
  5.  
  6. vector<int> a[nax];
  7. int n, s, rad;
  8.  
  9. void Citire()
  10. {
  11.     int x;
  12.     cin >> n;
  13.     for(int i = 1; i <= n; ++i)
  14.     {
  15.         cin >> x;
  16.         if(!x)
  17.             rad = i;
  18.         else
  19.             a[x].push_back(i);
  20.     }
  21. }
  22.  
  23. void DFS(int node)
  24. {
  25.     ++s;
  26.     for(int& it : a[node])
  27.         DFS(it);
  28. }
  29.  
  30. int main()
  31. {
  32.     Citire();
  33.     DFS(rad);
  34.     cout << (s == n ? "DA" : "NU");
  35.     return 0;
  36. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement