Advertisement
Guest User

Untitled

a guest
Feb 24th, 2020
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.94 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2.  
  3. using namespace std;
  4.  
  5. int a[101][101], nod, v[101], n, t[101], p, q,vt[101];
  6. int valori[101];
  7. ifstream f ("subarbori.in"); ofstream g ("subarbori.out");
  8. void dfs (int k)
  9. {
  10. v[k]=1;
  11.  
  12. for (int i=1 ; i<=n; i++)
  13. if (t[i]==k)
  14. {
  15. dfs(i);
  16. }
  17. }
  18. void citire ()
  19. {
  20. int x;
  21. f>>n;
  22. for (int i=1; i<=n; i++)
  23. {
  24. f>>t[i];
  25.  
  26. }
  27. }
  28. int nr;
  29. void afisare(int nod)
  30. {
  31. if (nod==0) return;
  32. afisare(t[nod]);
  33. nr++;
  34. }
  35. int main()
  36. {int i;
  37. citire();
  38. for (int k=1; k<=n; k++)
  39. {
  40. nr=0;
  41. for (i=1; i<=n; i++) v[i]=0;
  42. dfs(k);
  43. for (i=1; i<=n; i++)
  44. if (v[i]==1) nr++;
  45. valori[k]=nr;
  46. }
  47. nr=0;
  48. for (i=1; i<=n; i++)
  49. for (int j=i+1; j<=n;j++)
  50. if (i!=j)
  51. if (valori[i]==valori[j] && valori[i]!=1 && valori[j]!=1)nr++;
  52. g<<nr;
  53.  
  54.  
  55.  
  56. return 0;
  57. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement