joylintp

新手訓練系列 ~ 圖論

Aug 24th, 2021
2,135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.45 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3.  
  4. //{
  5. //#pragma gcc optimize("Ofast,unroll-loops")
  6. //#pragma gcc target("sse,sse2,sse3,ssse3,sse4,avx,avx2,fma,abm,mmx,popcnt,tune=native")
  7. //#define int long long
  8. //#define double long double
  9. #define MP make_pair
  10. #define F first
  11. #define S second
  12. #define MOD 1000000007
  13. //}
  14.  
  15. vector<bool> vis;
  16. vector<vector<int>> edge;
  17.  
  18. void dfs(int u)
  19. {
  20.     vis[u] = true;
  21.     for (int i : edge[u])
  22.         if (!vis[i])
  23.             dfs(i);
  24. }
  25.  
  26. signed main()
  27. {
  28.     ios_base::sync_with_stdio(false);
  29.     cin.tie(0);
  30.  
  31.     int n, m;
  32.     while (cin >> n >> m)
  33.     {
  34.         vis.resize(n + 1), edge.resize(n + 1);
  35.         for (int i = 1; i <= n; i++)
  36.             vis[i] = false, edge[i].clear();
  37.  
  38.         int u, v;
  39.         while (m--)
  40.             cin >> u >> v, edge[u].push_back(v);
  41.  
  42.         int a, b;
  43.         cin >> a >> b;
  44.  
  45.         dfs(a);
  46.         if (vis[b])
  47.             cout << "Yes!!!\n";
  48.         else
  49.             cout << "No!!!\n";
  50.     }
  51.  
  52.     return 0;
  53. }
  54.  
  55. //      *****  *****  *   *  *      *****  *   *  *****  *****
  56. //        *   *   *  *   *  *        *    **  *    *    *   *
  57. //       *   *   *  *****  *        *    * * *    *    *****
  58. //   *  *   *   *    *    *        *    *  **    *    *
  59. //  ****   *****    *    *****  *****  *   *    *    *
  60.  
  61. //     *   *   ***   *   *  **
  62. //    *   *  *   *  *   *  **
  63. //   * * *  *****  *****  **
  64. //  * * *  *   *  *   *
  65. //  * *   *   *  *   *  **
Advertisement
Add Comment
Please, Sign In to add comment