Advertisement
a53

NiveleBin

a53
Dec 28th, 2019
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.86 KB | None | 0 0
  1. #include <fstream>
  2. using namespace std;
  3. ifstream fin("nivelebin.in");
  4. ofstream fout("nivelebin.out");
  5. int nivele[1001],n,x, s[1001], d[1001],p[1001];
  6.  
  7. void completniv(int k, int niv)
  8. {
  9. if(k!=0)
  10. {
  11. nivele[k]=niv;
  12. completniv(s[k],niv+1);
  13. completniv(d[k],niv+1);
  14. }
  15. }
  16.  
  17. int main()
  18. {
  19. fin>>n;
  20. for(int i=1;i<=n;i++)
  21. { fin>>x>>s[i]>>d[i];
  22. p[s[i]]=1; p[d[i]]=1;
  23. }
  24. int r=0;
  25. for(int i=1;i<=n;i++)
  26. if(p[i]==0) r=i;
  27. completniv(r,0);
  28. int nivmax=0;
  29. for(int i=1;i<=n;i++)
  30. if(nivele[i]>nivmax) nivmax=nivele[i];
  31. fout<<nivmax+1<<'\n';
  32. for(int niv=0;niv<=nivmax;niv++)
  33. {
  34. int k=0;
  35. for(int j=1;j<=n;j++)
  36. if(nivele[j]==niv) k++;
  37. fout<<k<<' ';
  38. }
  39. fin.close();
  40. fout.close();
  41. return 0;
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement