fork(5) download
  1. #include<iostream>
  2. #include<vector>
  3. using namespace std;
  4. vector<int>adj[100000];
  5. bool visited[100000];
  6. int c=0;
  7. void initialize()
  8. {
  9. for(int i=0;i<100000;i++)
  10. visited[i] = false;
  11. }
  12. void dfs(int s)
  13. {
  14. visited[s] = true;
  15. for(int i=0; i<adj[s].size(); i++)
  16. {
  17. if(visited[adj[s][i]] == false)
  18. {
  19. visited[adj[s][i]] = true;
  20. c++;
  21. dfs(adj[s][i]);
  22. }
  23. }
  24. }
  25.  
  26. int main()
  27. {
  28. int nodes,edges,x,y,n;
  29. cin>>nodes>>edges;
  30. for(int i=0;i<edges;i++)
  31. {
  32. cin>>x>>y;
  33. x--;y--;
  34. adj[x].push_back(y);
  35. adj[y].push_back(x);
  36. }
  37. initialize();
  38. cin>>n;
  39. dfs(n);
  40. cout<<c;
  41. return 0;
  42. }
  43.  
Runtime error #stdin #stdout 0s 4736KB
stdin
Standard input is empty
stdout
Standard output is empty