这题真是没什么好说的。。。赤裸裸的求割点直接模板上

 #include<cstdio>
#include<cstring>
#include<iostream>
#include<vector>
#define maxn 1100 using namespace std; vector<int> g[maxn];
int dfn[maxn],low[maxn];
int vis[maxn],cnt[maxn];
int k=,f=,index=,m;
void dfs(int x)
{
// cout<<"1"<<endl;
int c=;
for(int i=;i<g[x].size();i++)
{
int e=g[x][i];
if(vis[e]==)
{
dfn[e]=low[e]=++index;
vis[e]=;
dfs(e);
low[x]=min(low[e],low[x]);
if(low[e]>=dfn[x])
{
cnt[x]++;
}
}
else low[x]=min(low[x],dfn[e]);
}
}
void solve()
{
f=index=;
memset(dfn,,sizeof(dfn));
memset(cnt,,sizeof(cnt));
memset(vis,,sizeof(vis));
memset(low,,sizeof(low));
printf("Network #%d\n",k++);
vis[]=;
dfn[]=low[]=++index;
dfs();
if(cnt[]>=) cnt[]--;
for(int i=;i<=m;i++)
{
if(cnt[i])
{
printf(" SPF node %d leaves %d subnets\n",i,cnt[i]+);
f=;
}
}
if(f==) printf(" No SPF nodes\n");
printf("\n");
}
int main()
{
int a,b;
while(scanf("%d",&a)!=EOF)
{
for(int i=;i<=maxn;i++)
g[i].clear();
if(a==) break;
scanf("%d",&b);
g[a].push_back(b);
g[b].push_back(a);
m=a<b?b:a;
while()
{
int x,y;
scanf("%d",&x);
if(x==) break;
scanf("%d",&y);
g[x].push_back(y);
g[y].push_back(x);
m=m>x?m:x;
m=m>y?m:y;
}
solve();
}
return ;
}

poj1523赤裸裸的割点的更多相关文章

  1. POJ1523 SPF[无向图割点]

    SPF Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 8139   Accepted: 3723 Description C ...

  2. POJ1523 SPF(割点模板)

    题目求一个无向图的所有割点,并输出删除这些割点后形成几个连通分量.用Tarjan算法: 一遍DFS,构造出一颗深度优先生成树,在原无向图中边分成了两种:树边(生成树上的边)和反祖边(非生成树上的边). ...

  3. POJ1523 Tarjan求割点以及删除割点之后强连通分量的数量

    题目链接:http://poj.org/problem?id=1523 SPF:A Single Point of Failure也就是割点(一个点导致网络之间的不连通),由于给出的图是无向图,所以只 ...

  4. poj1523 求割点 tarjan

    SPF Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 7678   Accepted: 3489 Description C ...

  5. POJ1523:SPF(无向连通图求割点)

    题目:http://poj.org/problem?id=1523 题目解析: 注意题目输入输入,防止PE,题目就是求割点,并问割点将这个连通图分成了几个子图,算是模版题吧. #include < ...

  6. POJ1523(割点所确定的连用分量数目,tarjan算法原理理解)

    SPF Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 7406   Accepted: 3363 Description C ...

  7. poj1523求割点以及割后连通分量数tarjan算法应用

    无向图,双向通道即可,tarjan算法简单应用.点u是割点,条件1:u是dfs树根,则u至少有2个孩子结点.||条件2:u不是根,dfn[u]=<low[v],v是u的孩子结点,而且每个这样的v ...

  8. POJ 1523 SPF(求割点)

    题目链接 题意 : 找出图中所有的割点,然后输出删掉他们之后还剩多少个连通分量. 思路 : v与u邻接,要么v是u的孩子,要么u是v的祖先,(u,v)构成一条回边. //poj1523 #includ ...

  9. poj 1523 SPF(tarjan求割点)

    本文出自   http://blog.csdn.net/shuangde800 ------------------------------------------------------------ ...

随机推荐

  1. noip搜索模拟题 骰子

    骰子 dice.cpp/c/pas 1s/128M [题目描述] 桌面上有两个特别的骰子.骰子的每一个面,都写了一个不同的数字.设第一个骰子上下左右前后分别为a1, a2, a3, a4, a5, a ...

  2. 【转】 Oracle 中的一些重要V$ 动态性能视图,系统视图和表

    v$database:数据库的信息,如数据库名,创建时间等. v$instance 实例信息,如实例名,启动时间. v$parameter 参数信息,select * from v$parameter ...

  3. go实现set

    package main import ( "fmt" "sync" ) type object interface{} type Set struct { m ...

  4. Myeclipse发布第一个jsp页面及web project部署到tomcat上的几种方法

    菜鸟日记: 1:new web project: 2:fix the visiting  path of the tomcat,打开在安装目录下conf目录中的server.xml,在</Hos ...

  5. js读取excel数据后的时间格式转换

    使用xlsx.full.min.js 获取excel的日期数据为:37858: 拿到的整数值是日期距离1900年1月1日的天数,这时需要写一个函数转换: function formatDate(num ...

  6. informix服务端卸载后重新安装不成功

    可能原因: 1.实例未删除 2.配置文件未删除 安装成功后远程客户端连接不上问题: 1..如果自己设置的数据库实例报错,换一个数据库实例(database)试试,例如sysadmin

  7. ADO.Net——增、删、改、查

    数据访问 对应命名空间:System.Data.SqlClient; SqlConnection:连接对象 SqlCommand:命令对象 SqlDataReader:读取器对象 CommandTex ...

  8. jsp之初识UserBean

    package com.java.model; public class Student { private String name; private int age; public String g ...

  9. 卓越管理的秘密(Behind Closed Doors)

    或许提到本书甚至本书的作者Johanna Rothman我们会感到些许陌生,那么提起她的另一本获得素有软件界奥斯卡之称的Jolt生产效率大奖的名著<项目管理修炼之道>,会不会惊讶的发现,原 ...

  10. Ajax经典的面试题

    1.什么是AJAX,为什么要使用Ajax(请谈一下你对Ajax的认识)什么是ajax:AJAX是“Asynchronous JavaScript and XML”的缩写.他是指一种创建交互式网页应用的 ...