fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. void DFS(int node, vector<vector<int>>& g, vector<int>& visited){
  5.  
  6. cout << node << '\n';
  7. visited[node] = 1;
  8.  
  9. for (auto &i : g[node]){
  10. if(visited[i] == 0){
  11. DFS(i, g, visited);
  12. }
  13. }
  14. }
  15.  
  16. int main() {
  17.  
  18. int n,e;
  19. cin >> n >> e;
  20.  
  21. vector<vector<int>> g(n+5);
  22.  
  23. for (int i = 0; i < e; i++){
  24. int a, b;
  25. cin >> a >> b;
  26. g[a].push_back(b);
  27. g[b].push_back(a);
  28. }
  29.  
  30. int source; cin >> source;
  31.  
  32. vector<int> visited(n+5, 0);
  33.  
  34. DFS(source, g, visited);
  35.  
  36.  
  37.  
  38. return 0;
  39. }
Success #stdin #stdout 0.01s 5324KB
stdin
8 7
1 2
1 3
2 4
2 5
3 6
3 7
4 8
1
stdout
1
2
4
8
5
3
6
7