fork download
  1. #include <iostream>
  2. #include <bits/stdc++.h>
  3. using namespace std;
  4.  
  5.  
  6. void dfs(int node, vector<int> g[], vector<int>& visited, vector<int>& parent){
  7.  
  8. cout<<node;
  9. cout<<"\n";
  10. visited[node]=1;
  11.  
  12.  
  13. for(auto u: g[node]){
  14.  
  15. if(visited[u]==0){
  16. parent[u] = node;
  17. dfs(u, g, visited, parent);
  18. }
  19. }
  20. }
  21.  
  22.  
  23. int main() {
  24.  
  25. int n;
  26. cin>>n;
  27. int e;
  28. cin>>e;
  29.  
  30. vector<int> g[n+1];
  31.  
  32. for(int i=1; i<=e; i++){
  33. int u,v;
  34. cin>>u;
  35. cin>>v;
  36. g[u].push_back(v);
  37. g[v].push_back(u);
  38. }
  39.  
  40. // visited
  41. vector<int> visited(n+1, 0);
  42.  
  43. // parent
  44. vector<int> parent(n+1, 0);
  45.  
  46.  
  47.  
  48. dfs(1, g, visited, parent);
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57. return 0;
  58. }
Success #stdin #stdout 0s 5320KB
stdin
9 8
1 2
1 3
1 4
2 5
3 6
3 7
4 8
4 9
stdout
1
2
5
3
6
7
4
8
9