摘要: 这个题的意思是有一个有向图, 每个顶点可以发送软件到与其相连的顶点上, 现在问1,至少发送给几个顶点能满足所有顶点都收到软件, 2:如果想让这个图变成强连通图,至少添几条边。 特例是给定的图是一个强连通图的话答案是1, 0. 一般情况下我们先将这个图的强连通分量求出来缩成一个点然后统计入度为0的点和 阅读全文
posted @ 2016-02-03 22:47 xing-xing 阅读(246) 评论(0) 推荐(0) 编辑
摘要: const int max_v = 120; struct Scc { int V; //图的顶点数 vector<int> G[max_v]; //原始图 vector<int> rG[max_v]; //反向边的图 vector<int> vs; //后序遍历顶点列表 bool used[max 阅读全文
posted @ 2016-02-03 22:40 xing-xing 阅读(349) 评论(0) 推荐(0) 编辑
摘要: 刚开始写了一个暴力的dfs超时了, 最后看了下题解说是先枚举答案再判断,然后就写了双dfs,全部秒杀,代码如下: /* ID: m1500293 LANG: C++ PROG: milk4 */ #include <cstdio> #include <cstring> #include <algor 阅读全文
posted @ 2016-02-03 22:39 xing-xing 阅读(526) 评论(0) 推荐(0) 编辑