fork(3) download
  1. #include<iostream>
  2. #include<list>
  3. #include<cstring>
  4. #include<queue>
  5. #define MA 1000000
  6. using namespace std;
  7.  
  8. int visit[MA];
  9. int parent[MA];
  10. int n;
  11. list<int> *adj;
  12.  
  13. int bfs(int s)
  14. {
  15.  
  16. queue<int> q;
  17. visit[s]=1;
  18. // parent[s]=0;
  19. list<int>::iterator i;
  20.  
  21. for(i=adj[s].begin();i!=adj[s].end();i++)
  22. {
  23. cout<<"done\n";
  24. q.push(*i);
  25. visit[*i]=1;
  26. // parent[*i]=s;
  27. }
  28. int v=s;
  29.  
  30. while(!q.empty())
  31. {
  32. s=v;
  33. v=q.front();
  34. // parent[v]=s;
  35. q.pop();
  36. visit[v]=1;
  37. //list<int>::iterator i;
  38. cout<<"done\n";
  39. if(!adj[v].empty()){
  40. for(i=adj[v].begin();i!=adj[v].end();i++)
  41. {
  42. if(!visit[*i])
  43. {
  44. visit[*i]=1;
  45. q.push(*i);
  46. }
  47. }
  48.  
  49. }
  50.  
  51. }
  52.  
  53. }
  54.  
  55. int main()
  56. {
  57. int m;
  58. cin>>n>>m;
  59.  
  60. adj=new list<int>[n];
  61.  
  62. memset(visit,0,n+1);
  63. memset(parent,-1,n+1);
  64. for(int i=0;i<m;i++)
  65. {
  66. int x,y;
  67. cin>>x>>y;
  68. adj[x].push_back(y);
  69. adj[y].push_back(x);
  70. }
  71. int s,e;
  72. cin>>s>>e;
  73.  
  74.  
  75. bfs(s);
  76. for(int i=1;i<=n;i++)
  77. cout<<visit[i]<<" ";
  78. cout<<endl;
  79. // for(int i=1;i<=n;i++)
  80. // cout<<parent[i]<<" ";
  81. //cout<<endl;
  82. return 0;
  83.  
  84. }
  85.  
Runtime error #stdin #stdout 0s 11048KB
stdin
5 5
1 3
2 3
1 2
3 5
4 5 
1 4
stdout
Standard output is empty