WA 裸强联通判断 hdu Problem-1269 迷宫城堡

来源:互联网 发布:wt网络语言什么意思啊 编辑:程序博客网 时间:2024/05/17 01:58

     http://acm.hdu.edu.cn/showproblem.php?pid=1269

                          WA了两次生气         不过伪指针的思路是绝对可以借鉴的      知道怎么WA了          你们呢?   请看下一期   答案(估计没人看)

#include<iostream>using namespace std;#define Size 100010struct node{    int e,next;      }edge1[Size],edge2[Size];int head1[10002],head2[10003],visit[10002];void dfs1(int i){   visit[i]=1;     for(int p=head1[i];p!=-1;p=edge1[p].next)      if(!visit[edge1[p].e])          dfs1(edge1[p].e);}void dfs2(int i){  visit[i]=1;   for(int p=head2[i];p!=-1;p=edge2[p].next)         if(!visit[edge2[p].e])   dfs2(edge2[p].e);}int main(){int m,n,a,b,flag=0;int i;while(cin>>n>>m,n||m){memset(head1,-1,sizeof(head1));memset(head2,-1,sizeof(head2));memset(visit,0,sizeof(visit));for(i=0;i<m;i++){cin>>a>>b;            edge1[i].e=b;edge1[i].next=head1[a];head1[a]=i;edge2[i].e=a;edge2[i].next=head2[b];head2[b]=i;}for(i=1;i<=n;i++){if(!visit[i]){    dfs1(i);flag++;    }}        memset(visit,0,sizeof(visit));for(i=1;i<=n;i++){            if(flag>2)break;if(!visit[i]){flag++;dfs2(i);}}if(flag==2)cout<<"Yes"<<endl;elsecout<<"No"<<endl;}return 0; }


原创粉丝点击