摘要:
http://acm.hdu.edu.cn/showproblem.php?pid=3836缩点后求每个点的入度与出度,最后结果是max(入度为0的点的个数,出度为0的点的个数);只要整个图形成强连通图就可以证明了。。今天真二把tarjian模板写错了,贡献了好几次wa竟然没有检查出来。。。。唉。。。View Code #include <cstdio>#include <cstring>#include <iostream>#include <vector>#include <stack>#define maxn 20007usin 阅读全文
posted @ 2012-02-14 17:31
E_star
阅读(211)
评论(0)
推荐(0)
摘要:
http://poj.org/problem?id=2553题意才开始理解错了一位G中的任意一点都能到达v且v也能达到该点时v才属于bottom;如果这样最后出度为0的比为一个了,而且整个图都要缩为一点了。其实题意是说w属于G如果v->w ==>(推出)w->v则v属于bottom。先缩点,然后统计出度为0的点,然后输出所有出度为0的点包含的点。如果出度不为0,那么v->w退不出w->v这里的DAG比存在出度为0的点。。。所以都骂出题的二逼啊。。。View Code #include <cstdio>#include <cstring>#i 阅读全文
posted @ 2012-02-14 16:35
E_star
阅读(303)
评论(0)
推荐(0)
摘要:
http://poj.org/problem?id=2186将所有最大连通分量缩点,然后统计缩点后每个点的出度,出度为0的肯定就是了可是这个点可能是缩出来的,所以要记录这个点真正包含的点数。如果出度为0的点大于1个说明不存在View Code 稍微尝试了一下stl的vector和stack#include <cstdio>#include <cstring>#include <vector>#include <stack>#include <iostream>#define maxn 10017using namespace std; 阅读全文
posted @ 2012-02-14 15:08
E_star
阅读(287)
评论(0)
推荐(0)
摘要:
http://poj.org/problem?id=1236N(2<N<100)各学校之间有单向的网络,每个学校得到一套软件后,可以通过单向网络向周边的学校传输,问题1:初始至少需要向多少个学校发放软件,使得网络内所有的学校最终都能得到软件。2,至少需要添加几条传输线路(边),使任意向一个学校发放软件后,经过若干次传送,网络内所有的学校最终都能得到软件。首先求出该图所有的强连通分量,将其缩为一点,因为对于强连通分量,任意两点都能互相可达,只要给DAG(强连通分量)中的任意一点都能互相到达。缩点后然后统计每个点的入度与出度,入度为0的点肯定是A的答案,而对于答案B则是max(入度为0 阅读全文
posted @ 2012-02-14 10:04
E_star
阅读(309)
评论(0)
推荐(0)


浙公网安备 33010602011771号