Advertisement
Guest User

Untitled

a guest
Jul 17th, 2018
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.05 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3.  
  4. #define white 0
  5. #define grey 1
  6. #define black 2
  7.  
  8. vector<int> adj[123456];
  9. int visited[123456]= {0};
  10. int color[123456]= {white};
  11. int dis[123456]= {0};
  12. int prev[123456]= {-1};
  13. int fin[123456]= {-1};
  14. int dist=0;
  15. int tim=0;
  16. int cnt=0;
  17.  
  18. void dfs(int x)
  19. {
  20. color[x]=grey;
  21. tim++;
  22. dis[x]=tim;
  23.  
  24. for(int i=0; i<adj[x].size(); i++)
  25. {
  26. int v=adj[x][i];
  27. if(color[v]=white)
  28. {
  29. prev[v]=x;
  30. dfs(v);
  31. }
  32. color[x]=black;
  33. tim++;
  34. fin[x]=tim;
  35. }
  36. }
  37.  
  38.  
  39. int main()
  40. {
  41. int e,n,u,v,t,m,mx=0;
  42. cin>>t;
  43. for(int i=1; i<=t; i++)
  44. {
  45. cin>>n;
  46. for(int i=1; i<=n; i++)
  47. {
  48. cin>>u>>v;
  49. adj[u].push_back(v);
  50. }
  51. for(int i=1; i<=n; i++)
  52. {
  53. tim=0;
  54. dfs(i);
  55. if(tim>mx){
  56. mx=tim;
  57. m=i;
  58. }
  59. }
  60. cout<<"->"<<m<<endl;
  61. dist=0;
  62. }
  63.  
  64.  
  65.  
  66. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement