思路:先缩点成有向无环图,则必然含有出度为0的点/入度为0的点,因为要使添加的边尽量多,最多最多也就n*(n-1)条减去原来的m条边,这样是一个强连通图,问题转化为最少去掉几条,使图不强连通,原来图中入度的点,若不添加入度,则必然不连通,同理出度为0的也一样,所以,找入度/出度为0的点中, ki(n-ki)最小的,这里KI是缩点后该SCC中的点数量,这个结果就是最小去掉的边数了。
思路清晰,1...
分类:
其他好文 时间:
2014-08-03 12:52:25
阅读次数:
202
The King’s Problem
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 1606 Accepted Submission(s): 584
Problem Description
In the Kingdom of ...
分类:
其他好文 时间:
2014-08-02 18:31:33
阅读次数:
252
B - Popular Cows
Time Limit:2000MS Memory Limit:65536KB 64bit IO Format:%I64d
& %I64u
Submit Status
Description
Every cow's dream is to become the most popular cow in the her...
分类:
其他好文 时间:
2014-08-01 13:38:31
阅读次数:
222
题意如上,含有重边(重边的话,俩个点就可以构成了边双连通)。
先缩点成树,在求数的直径,最远的连起来,剩下边(桥)的自然最少。这里学习了树的直径求法:第一次选任意起点U,进行bfs,到达最远的一个点v(level最深)该点必然是树的直径的一个端点,,再从该点出发,bfs,到最深的一点,该点深度就是直径。(证明:先假设u,是直径上一点,S,T是直径的端点,设v!=t,则有(V,U)+(U,S)>(...
分类:
其他好文 时间:
2014-08-01 00:00:00
阅读次数:
371
1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 #define maxx 44 8 #define maxx2 44*44 9 #define INF 99999999...
分类:
其他好文 时间:
2014-07-31 23:12:10
阅读次数:
240
HDU 2767 Proving Equivalences(强连通 Tarjan+缩点)
ACM
题目地址:HDU 2767
题意:
给定一张有向图,问最少添加几条边使得有向图成为一个强连通图。
分析:
Tarjan入门经典题,用tarjan缩点,然后就变成一个有向无环图(DAG)了。
我们要考虑的问题是让它变成强连通,让DAG变成强连通就是把尾和头连起来,也就...
分类:
其他好文 时间:
2014-07-30 17:38:34
阅读次数:
212
POJ 1236 Network of Schools(强连通 Tarjan+缩点)
ACM
题目地址:POJ 1236
题意:
给定一张有向图,问最少选择几个点能遍历全图,以及最少添加几条边使得有向图成为一个强连通图。
分析:
跟HDU 2767 Proving Equivalences(题解)一样的题目,不过多了个问题,其实转化成DAG后就不难考虑了,其实只要选...
分类:
Web程序 时间:
2014-07-30 17:38:14
阅读次数:
252
解题报告
题目传送门
题意:
N个士兵,M个武器,每个士兵能接受的武器重量范围是[minw,maxw]
思路:
本来以为二分图可以的,(看错数据范围了,,,)贪心好像可以。
scf说网络流可以缩点。
建图方式:源点和士兵连一条线,每个士兵与[1,1000]的武器重量连边,[1,1000]与汇点连线,容量是武器i的数量
#include
#include
#include
#i...
分类:
其他好文 时间:
2014-07-29 14:43:28
阅读次数:
268
【题意】:给出一张无向连通图,求添加多少条边可以成为边-双连通图【思路】:同3352 一样,求出边-双连通分量,缩点就成了一棵树,求这棵树里的出度为1 的点num 结果是(num-1)/2; 但是!! 这里和3352 哟一点不一样就是这里有重边,当有重边的时候,不同low值的两点可能属于...
分类:
其他好文 时间:
2014-07-29 13:39:28
阅读次数:
178
【题意】 给出一张无向连通图,求至少连几条边可以变成边双连通图【思路】求出边-双连通分量,缩点就成了一棵树,求这棵树里的出度为1 的点num 结果是(num-1)/2; 1 #include 2 #include 3 #include 4 #include 5 #include 6 using na...
分类:
其他好文 时间:
2014-07-29 11:32:06
阅读次数:
310