题意:给你一个图,问最多能添加多少条边使图仍为不是强连通图,如果原图是强连通输出 ‘-1’分析:先把求出连通分量进行缩点,因为是求最多的添加边,所以可以看成两部分 x,y,只能一部分向另外一部分连边,内部的就是完全图,所以是x*(x+1)+x*y+y*(y+1)-M,只需要求出来出度或者入度为0的最...
分类:
其他好文 时间:
2015-08-01 11:18:06
阅读次数:
87
题意:有一个无向连通图,现在问添加一条边后最少还有几个桥分析:先把图缩点,然后重构图为一棵树,求出来树的直径即可,不过注意会有重边,构树的时候注意一下***********************************************************************#pra...
分类:
其他好文 时间:
2015-07-31 23:11:07
阅读次数:
246
题意:给一个图,想让每两条路都有两条边相,不过特殊的是相同的边多次相连也被认为是一条边,现在求最少还需要添加几条边才能做到分析:手欠没看清楚是相同的边不能相连,需要去重边,缩点后求出来叶子节点的数目即可。************************************************...
分类:
其他好文 时间:
2015-07-31 19:56:14
阅读次数:
127
题意:学校有一些单向网络,现在需要传一些文件,1,求最少需要向几个学校分发文件才能让每个学校都收到,2,需要添加几条网络才能在任意一个学校分发都可以传遍所有学校。分析:首先应该求出来连通分量,进行缩点,然后求每个分量的入度和出度,入度等于0的很明显都需要分发一个文件,至于需要添加几条边可以成为一个强...
分类:
Web程序 时间:
2015-07-31 10:25:14
阅读次数:
106
PIGS
Time Limit: 1000MS
Memory Limit: 10000K
Total Submissions: 18057
Accepted: 8210
Description
Mirko works on a pig farm that consists of M locked pig-houses and Mirk...
分类:
其他好文 时间:
2015-07-28 13:13:40
阅读次数:
178
题意:一张有向图,一问至少给几个点发送软件,才能让所有点都能收到软件;二问是至少添加几条边才能让整个图是一个连通分量;分析:一般求连通分量都会求缩点,在这里缩点之后,生成一张新的图,在新的图中求每一个点的出度,入度。答案就是sum(入度=0),max(sum(出度 == 0),sum(入度 == 0...
分类:
其他好文 时间:
2015-07-28 10:18:56
阅读次数:
151
题解再次来自lsj(懒得敲):对于一个强连通分量, 一定是整个走或者不走, 所以tarjan缩点然后跑dijkstra. 1 #include 2 #define clr(a,x) memset(a,x,sizeof(a)) 3 #define rep(i,l,r) for(int i=l;i...
分类:
其他好文 时间:
2015-07-28 00:45:58
阅读次数:
93
题意:有一幅图,现在要加一条边,加边之后要你删除一条边,使图不连通,费用为边的费用,要你求的是删除的边的最小值的最大值(每次都可以删除一条边,选最小的删除,这些最小中的最大就为答案)首先要进行缩点,把图缩为一棵树,因此,加入一条边后图就会存在一个环,环中的任何一条边删除后都不会导致图不连通之后找一条...
分类:
移动开发 时间:
2015-07-28 00:27:20
阅读次数:
128
Forwarding EmailsTime Limit: 1000msMemory Limit: 131072KBThis problem will be judged onUVA. Original ID:1244264-bit integer IO format:%lld Java class ...
分类:
其他好文 时间:
2015-07-27 22:27:25
阅读次数:
109
对于一个强连通分量, 一定是整个走或者不走, 所以tarjan缩点然后跑dijkstra.---------------------------------------------------------------------#include#define rep(i, n) for(int i ...