博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[USACO5.3]校园网Network of Schools Tarjan缩点
阅读量:6872 次
发布时间:2019-06-26

本文共 849 字,大约阅读时间需要 2 分钟。

题目描述

对于任务A,即求缩点后入度为0的点的个数

对于任务B,要使整个图连通,则入度0的点需要拓展一条入边,出度0的点需要拓展一条出边,那么需要拓展的最少边数即为max(入度0点数,出度0点数);特别的,当本来整个图连通时,不需要拓展

代码

#include
#include
#include
#include
#include
using namespace std;const int N=110,M=N*N;int ans,n,top,cnt1,cnt2,s[N],deg[N],q[N],e[N][N];int tot,idx,dfn[N],low[N],col[N],vis[N];vector
g[N];int read(){ int out=0,f=1;char c=getchar(); while(c > '9' || c < '0') { if(c == '-') f=-1; c=getchar();} while(c <= '9' && c >= '0') {out=(out<<1)+(out<<3)+c-'0';c=getchar();} return out*f;}void init(){ n=read(); for(int i=1;i<=n;i++) { int x; while(x=read()) {g[i].push_back(x);} }}void tarjan(int u){ dfn[u]=low[u]=++idx;s[++top]=u;vis[u]=1; for(unsigned int i=0;i

转载于:https://www.cnblogs.com/zerolt/p/9260896.html

你可能感兴趣的文章
并发不是并行,它更好!
查看>>
nltk 自己训练模型例子
查看>>
间谍卫星的基础?YOLT——利用卷积神经网络对卫星影像进行多尺度目标检测(Part I)...
查看>>
jstl_开发第一个标签
查看>>
程序员哇,你想在下个情人节或者520脱单么?这个秘籍不能错过
查看>>
去不去O,谁说了算?
查看>>
PHP防SQL注入和XSS攻击
查看>>
在SHAREPOINT共享文档库中启用版本控制功能。
查看>>
Http 代理工具 实战 支持网页与QQ代理
查看>>
又见尾递归
查看>>
安装PyGraphics
查看>>
【COCOS2DX-LUA 脚本开发之四】使用TOLUA++编译PKG,从而创建自定义类让LUA脚本使用...
查看>>
开源大数据周刊-第16期
查看>>
遥感图像分类现状及存在的问题
查看>>
Commons Logging存在的ClassLoader问题详解
查看>>
双向链表的操作
查看>>
Flume-ng 高级功能配置
查看>>
我的友情链接
查看>>
CRM技术发展历程
查看>>
编译安装LAMP(php-fpm)步骤详解
查看>>