int dfn[MAXN],low[MAXN],cnt;
bool isbridge[MAXN];
void tarjan(int x,int edg)
{
low[x]=dfn[x]=++cnt;
for(int i=f(x);i;i=n(i))
if(!dfn[v(i)])
{
tarjan(v(i),i);
low[x]=min(low[x],low[v(i)]);
if(low[v(i)]>dfn[x])
isbridge[i]=isbridge[i^]=;
}
else if(i!=(edg^))low[x]=min(low[x],dfn[v(i)]);
}
int c[MAXN],dcc;
void dfs(int x,int dcc)
{
c[x]=dcc;
for(int i=f(x);i;i=n(i))
if(!c[v(i)]&&!isbridge[i])
dfs(v(i),dcc);
}
signed main()
{
for(int i=;i<=n;i++)
if(!dfn[i])tarjan(i,);
for(int i=;i<=n;i++)
if(!c[i])dcc++,dfs(i,dcc);
for(int i=;i<=num_e;i++)
if(c[u(i)]!=c[v(i)])
du[c[u(i)]]++;
}

最新文章

  1. 『.NET Core CLI工具文档』(九)dotnet-run
  2. MMORPG大型游戏设计与开发(服务器 游戏场景 多线程)
  3. 利用chardet检测网页编码
  4. 挑战python
  5. 【C++】GacLib——ListView.ViewSwitching
  6. WCF 第五章 会话级别的实例
  7. achartengine andorid图像引擎入门
  8. CentOS7 更换yum源
  9. 性能测试进阶指南——基础篇之磁盘IO
  10. Ubuntu 10.04里安装强大抓图工具Shutter
  11. 安装windows7/8/10到U盘或移动硬盘
  12. vmware 实现linux目录映射window本地目录
  13. Ofstream的endl不好用怎么回事?
  14. 使用TCPDF输出完美的中文PDF文档
  15. Baidu Map开发示例
  16. MOSS 2013研究系列---列表的资源限制
  17. js是函数式的面向对象编程语言
  18. Spring 通过XML配置装配Bean
  19. JMeter 五:监控服务器
  20. 简明python教程七----面向对象的编程

热门文章

  1. 在C#应用中使用Common Logging日志接口
  2. Java问题解读系列之String相关---String类的常用方法?
  3. MVC的学习步骤
  4. centos下彻底删除mysql
  5. js顺序加载与并行加载
  6. R语言可视化二
  7. Liferay 7:portlet name
  8. stack的基本使用方式
  9. SQL Server 存储过程详解
  10. Android中使用ormlite实现持久化--HelloOrmLite