设为首页 加入收藏

TOP

hdu 4612 Warm up (二)
2014-11-23 21:42:19 来源: 作者: 【 】 浏览:8
Tags:hdu 4612 Warm
{ int i; cnt0=0; memset(pre,0,sizeof(pre)); memset(low,0,sizeof(low)); memset(bridge,0,sizeof(bridge)); bcnt=0; for(i=1;i<=n;i++) { if(!pre[i]) { bridge_search(i,-1); } } return bcnt; } int vis[maxn]; int dist[maxn]; void Dfs(int now,int num) { low[now]=num; vis[now]=1; int t,v,nn; for(t=box[0][now];t+1;t=e[0][t].next) { v=e[0][t].to,nn=e[0][t].num; if(bridge[nn]) continue; if(!vis[v]) { Dfs(v,num); } } } void lensolve(int now) { int t,v; for(t=box[1][now];t+1;t=e[1][t].next) { v=e[1][t].to; if(dist[v]==-1) { dist[v]=dist[now]+1; lensolve(v); } } } void solve(int n,int num) { int i,sum=0; memset(low,0,sizeof(low)); memset(vis,0,sizeof(vis)); for(i=1;i<=n;i++) { if(!low[i]) Dfs(i,++sum); } for(i=1;i<=n;i++) { int t,v; for(t=box[0][i];t+1;t=e[0][t].next) { v=e[0][t].to; if(low[i]!=low[v]) { add(low[i],low[v],0,1); add(low[v],low[i],0,1); } } } if(sum==1) { printf("0\n"); return; } memset(dist,-1,sizeof(dist)); dist[1]=0; lensolve(1); int ma=0,root; for(i=1;i<=sum;i++) { if(ma

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇HDU 1010――tempter of the bone 下一篇[leetcode]Pow(x, n)

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·一篇说人话的文章, (2025-12-27 07:50:09)
·Python Web框架哪家 (2025-12-27 07:50:06)
·基于Python的数据分 (2025-12-27 07:50:03)
·深入理解 Java 集合 (2025-12-27 07:22:48)
·Java集合框架全面解 (2025-12-27 07:22:45)