fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int parad[1000003];
  4. vector<vector<int>> vec;
  5. int maxwyn=0;
  6. int max_dfs(int n)
  7. {
  8. int maks1=0;
  9. int maks2=0;
  10. for(auto a:vec[n])
  11. {
  12. int xd=max_dfs(a);
  13. if(maks1<=xd)
  14. {
  15. maks2=maks1;
  16. maks1=xd;
  17. }
  18. else if(maks1>xd and xd>maks2)
  19. {
  20. maks2=xd;
  21. }
  22. }
  23. int jajko = maks2+maks1-2+vec[n].size();
  24. maxwyn=max(maxwyn, jajko );
  25. return (maks1-2+vec[n].size());
  26. }
  27. int main()
  28. {
  29. int n,k;cin>>n>>k;
  30. vec.resize(n+1);
  31. for(int i=0;i<n-1;i++)
  32. {
  33. int a,b;cin>>a>>b;
  34. vec[a].push_back(b);
  35. vec[b].push_back(a);
  36. }
  37. max_dfs(1);
  38. cout<<maxwyn;
  39. }
Success #stdin #stdout 0s 5316KB
stdin
8
1 2
2 3
4 2
5 2
6 5
5 7
7 8
stdout
Standard output is empty