电波

#include<bits/stdc++.h>
using namespace std;
#define LL long long
#define maxn 30000
vector<int>q[maxn];
int dfn[maxn],low[maxn],st[maxn],vis[maxn],top;
int num[maxn],i;
void dfs(int u,int deep,int fa){
   dfn[u]=deep;
   low[u]=deep;
   st[++top]=u;
   vis[u]=;
   ;j<q[u].size();j++){
       int v=q[u][j];
       if(v==fa) continue;
       if(!dfn[v]){
          dfs(v,deep+,u);
          low[u]=min(low[u],low[v]);
       }else if(vis[v]){
          low[u]=min(low[u],low[v]);
       }
   }
   if(low[u]==dfn[u]){
       num[u]=++i;
       vis[u]=;
       while(st[top]!=u){
          num[st[top]]=i;
          vis[st[top]]=,top--;
       }
       top--;
   }
}
int main(){
     int n,m;
     cin>>n>>m;
     memset(vis,,sizeof(vis));
     memset(dfn,,sizeof(dfn));
     ;j<m;j++){
        int u,v;
        scanf("%d%d",&u,&v);
        q[u].push_back(v);
        q[v].push_back(u);
     }
     top=,i=;
     ;j<=n;j++){
        if(!dfn[j]){
           dfs(j,,j);
        }
     }
     int z;
     cin>>z;
     ;j<z;j++){
        int u,v;
        scanf("%d%d",&u,&v);
        if(num[u]==num[v]){
           printf("Yes\n");
        }else{
           printf("No\n");
        }
     }
  ;
}

最新文章

  1. Linux截屏工具scrot用法详细介绍
  2. jekyll安装的斗智斗勇
  3. monkey学习笔记
  4. python的反射机制
  5. web设计经验&lt;三&gt;值得你深入了解的交互设计5大支柱
  6. Android 批量插入数据到SQLite数据库
  7. C++与Lua交互(四)
  8. 【恒天云】OpenStack和CloudStack对比研究报告
  9. BZOJ 3514 (动态树)
  10. 用java实现Simsimi小黄鸡接口
  11. Maximum Subarray (JAVA)
  12. 五大科技巨头VR/AR专利报告,Magic Leap以22.6%领跑
  13. BBED跳过归档
  14. Time complexity of ArrayList in Java
  15. iOS&#183;UIKit框架注解 &amp; Foundation
  16. idea 配置tomcat(包含tomcat Server找不到的配置方法)
  17. 【学习笔记】tensorflow文件读取
  18. idea常用操作大全
  19. CITROEN C8 BSI HC12 Mileage Correction with Digiprog3
  20. 算法bug修复

热门文章

  1. hangfire使用笔记
  2. SQLSERVER sa 用户密码修改的方法
  3. (一)类数组对象NodeList
  4. python之路--初识面向对象
  5. elasticsearch的映射
  6. linux服务器运维
  7. DBExpress动态连接SQL-Server
  8. Lodop打印较大的超出纸张的图片
  9. vim的几个常用操作
  10. cf- Educational Codeforces Round 40 -D