题目梗概 输入给出最小生成树,由最小生成树求出最小完全图(任意两点之间只有一条线段相连)。 思考 首先一个图中最小生成树,按照kruskal算法。一定是使图连通的最小边。我们设这两点的边权为W,那么与两点相连的其他的边一定是W+1。 所以构建方法是 每次选出图中最短的边,其两点标记为A,B,边权为W ...
分类:
其他好文 时间:
2017-07-24 13:15:28
阅读次数:
169
1050: [HAOI2006]旅行comf Description 给你一个无向图,N(N<=500)个顶点, M(M<=5000)条边,每条边有一个权值Vi(Vi<30000)。给你两个顶点S和T,求 一条路径,使得路径上最大边和最小边的比值最小。如果S和T之间没有路径,输出”IMPOSSIBL ...
分类:
其他好文 时间:
2017-07-14 23:01:44
阅读次数:
204
今天的主要内容为最小生成树、判负环和差分约束系统 苗条的最小生成树 poj3522 本题排序完枚举最小边,Kruskal跑n遍即可。 虫洞 9018_1449 题目大意是给出m条正边,w条负的,叫你判负环 layout 9018_1456 本题在判负环的基础上用了差分约束系统 糖果BZOJ2330 ...
分类:
其他好文 时间:
2017-07-05 22:52:28
阅读次数:
194
Description 给你一个无向图,N(N<=500)个顶点, M(M<=5000)条边,每条边有一个权值Vi(Vi<30000)。给你两个顶点S和T ,求一条路径,使得路径上最大边和最小边的比值最小。如果S和T之间没有路径,输出”IMPOSSIBLE”,否则输出 这个比值,如果需要,表示成一个 ...
分类:
其他好文 时间:
2017-06-13 10:12:31
阅读次数:
167
求最小割及最小花费 把边权c = c*10000+1 然后跑一个最小割,则flow / 10000就是费用 flow%10000就是边数。 且是边数最少的情况。。 #include<stdio.h> #include<string.h> #include<iostream> #include<mat ...
分类:
其他好文 时间:
2017-06-10 17:06:34
阅读次数:
136
给你一个有n个点和m条边的无向连通图,每条边都有一个权值ww.我们定义,对于一条路径,它的Charm value为该路径上所有边的权值的最大值与最小值的差.询问从1到n的所有路径的Charm value的最小值. 首先,考虑到,我们需要找到一条路径,使它的最小边尽量大,最大边尽量小 然后,考虑到m比 ...
分类:
其他好文 时间:
2017-05-26 20:42:48
阅读次数:
535
题意:给出一颗n个点的图,q个询问,每次询问u到v的路径中最小的边最大是多少。 图的最大瓶颈生成树有一个性质,对于该图的任意两个点,在树中他们之间路径的最小边最大。 由于这个图不一定联通,于是我们对它的联通块都求一次最大瓶颈生成树。 每次询问就变成了在最大瓶颈生成树上找出u到v路径的最小边。 这个显 ...
分类:
其他好文 时间:
2017-05-07 15:41:56
阅读次数:
270
Prim算法 Prim算法求最小生成树是采取蓝白点的思想,白点代表已经加入最小生成树的点,蓝点表示未加入最小生成树的点。 进行n次循环,每次循环把一个蓝点变为白点,该蓝点应该是与白点相连的最小边权的是当前蓝点中最小的。这样就相当于向生成树中添加了n-1次最小的边,最后得到的一定是最小生成树。 1 # ...
分类:
编程语言 时间:
2017-05-07 11:45:15
阅读次数:
247
转载自:http://www.cnblogs.com/icode-girl/p/5418461.html 【最小路径覆盖】 首先给出公式:DAG的最小路径覆盖数=DAG图中的节点数-相应二分图中的最大匹配数. 一个PXP的有向图中,路径覆盖就是在图中找一些路径,使之覆盖了图中的所有顶点,且任何一个顶 ...
分类:
其他好文 时间:
2017-04-30 12:45:15
阅读次数:
153
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1853 Cyclic Tour Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/65535 K (Java/Others) Total S ...
分类:
其他好文 时间:
2017-04-14 20:31:03
阅读次数:
214