Advertisement
midnight_sun

Untitled

Nov 15th, 2022
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.97 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. #define fastio ios_base::sync_with_stdio(false); cin.tie(NULL);
  3. using namespace std;
  4. int n, m, d, tem[1100][1110] = {}, ans[1100] = {};
  5. bool dd[1100] = {};
  6. vector<int> v[1100] = {};
  7. queue<int> q;
  8. void dfs(int a) {
  9.     dd[a] = true;
  10.     cout << a << " ";
  11.     for (int i = 0; i < v[a].size(); i++) {
  12.         if (dd[v[a][i]] == false) dfs(v[a][i]);
  13.     }
  14. }
  15. void bfs(int a) {
  16.     cout << a << " ";
  17.     dd[a] = true;
  18.     q.push(a);
  19.     while (!q.empty()) {
  20.         int node = q.front();
  21.         q.pop();
  22.         for (int i = 0; i < v[node].size(); i++) {
  23.             if (dd[v[node][i]] == false) {
  24.                 dd[v[node][i]] = true;
  25.                 cout << v[node][i] << " ";
  26.                 q.push(v[node][i]);
  27.             }
  28.         }
  29.     }
  30. }
  31. int main() {
  32.     fastio;
  33.     cin >> n >> m >> d;
  34.     for (int i = 0; i < m; i++) {
  35.         int a, b;
  36.         cin >> a >> b;
  37.         v[a].push_back(b);
  38.         v[b].push_back(a);
  39.     }
  40.     for (int i = 1; i <= n; i++) std::sort(v[i].begin(), v[i].end());
  41.     dfs(d);
  42.     cout << "\n";
  43.     for (int i = 1; i <= n; i++) dd[i] = false;
  44.     bfs(d);
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement