DFS序,欧拉序
#include<bits/stdc++.h>usingnamespacestd;usingll=longlong;usingull=unsignedlonglong;#defineme(a)memset(a,0,sizeof(a));constintN=10005;vector<int>g[N];intnum[N],dis[N],len,t;ints[N],e[N];inteuler[N];//voiddfs(intu,intx,intpos)//dfs序时间戳//{//num[++len]=u;//intd=len;//s[len]=++t;//dis[u]=pos;//for(inti:g[u])//{//if(i!=x)//{//dfs(i,u,pos+1);//}//}e[d]=t;//}voiddfs(intu,intfa)//欧拉序{euler[++len]=u;for(inti:g[u]){if(i!=fa){dfs(i,u);//euler[++len]=u;//欧拉序1}}//euler[++len]=u;//欧拉序2}intmain(){intn,x;while(cin>>n>>x){for(inti=0;i<N;i++)g[i].clear();len=0,t=0;me(num);me(dis);me(s);me(e);me(euler);for(inti=1,u,v;i^n;i++){cin>>u>>v;g[u].push_back(v);g[v].push_back(u);}}}
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。