题目1 : 最小生成树二·Kruscal算法
时间限制:10000ms
单点时限:1000ms
内存限制:256MB
描述
随着小Hi拥有城市数目的增加,在之间所使用的Prim算法已经无法继续使用了——但是幸运的是,经过计算机的分析,小Hi已经筛选出了一些比较适合建造道路的路线,这个数量并没有特别的大。
所以问题变成了——小Hi现在手上拥有N座城...
分类:
编程语言 时间:
2015-01-06 15:36:48
阅读次数:
226
题目1 : 最小生成树二·Kruscal算法时间限制:10000ms单点时限:1000ms内存限制:256MB描述随着小Hi拥有城市数目的增加,在之间所使用的Prim算法已经无法继续使用了——但是幸运的是,经过计算机的分析,小Hi已经筛选出了一些比较适合建造道路的路线,这个数量并没有特别的大。所以问...
分类:
编程语言 时间:
2015-01-05 20:17:41
阅读次数:
167
仔细想想这就是一道最裸的最小生成树题目这里给出prim和kruscal两种方法计算当然因为这题目是密集边所以其实prim算法更加好一点的prim: 1 /* 2 最小生成树,prim算法 3 */ 4 #include 5 #include 6 #include 7 8 using name...
分类:
其他好文 时间:
2014-12-31 06:16:13
阅读次数:
217
二分(分块)枚举 边权上限。用kruscal判可行性。#include#include#include#includeusing namespace std;int u[20001],v[20001],w1[20001],w2[20001],n,m,K,Limit;int fa[10001],ran...
分类:
其他好文 时间:
2014-12-23 19:13:35
阅读次数:
207
发现,若使方差最小,则使Σ(wi-平均数)最小即可。因为权值的范围很小,所以我们可以枚举这个平均数,每次把边权赋成(wi-平均数)2,做kruscal。但是,我们怎么知道枚举出来的平均数是不是恰好是我们的这n-1条边的呢? 就在更新答案的时候加个特判就行了。 1 #include 2 #includ...
分类:
其他好文 时间:
2014-11-25 13:58:02
阅读次数:
180
本意是求最小瓶颈生成树,但是我们可以证明:最小生成树也是最小瓶颈生成树(其实我不会)。数据范围很小,暴力kruscal即可。 1 #include 2 #include 3 using namespace std; 4 struct Edge{int u,v,w;void Read(){scanf(...
分类:
其他好文 时间:
2014-11-22 18:44:16
阅读次数:
174
2014.11.4 7:33 还有三天半就要NOIP,圈一下要背的知识点:一、数论1、素数判断2、筛法求素数3、求一个数的欧拉函数值4、预处理欧拉函数5、卡塔兰数递推式6、快速幂(模素数的乘法逆元)7、GCD二、图论1、最短路:①堆dijkstra ②spfa2、kruscal 最小生成树3、LCA...
分类:
其他好文 时间:
2014-11-05 22:48:19
阅读次数:
250
2014.11.4 7:33 还有三天半就要NOIP,圈一下要背的知识点:一、数论1、素数判断2、筛法求素数3、求一个数的欧拉函数值4、预处理欧拉函数5、卡塔兰数递推式6、快速幂(模素数的乘法逆元)7、GCD二、图论1、最短路:①堆dijkstra ②spfa2、kruscal 最小生成树3、LCA...
分类:
其他好文 时间:
2014-11-04 08:05:37
阅读次数:
128
建图:每个点向它四周的点连边权为两点点权的差的绝对值的边。由于有多个需要“施法”的点,所以相当于对每个这样的点,询问与它的距离在T以内的最长边的最小值,即多次询问。最长边最小之类的,肯定是最小生成树没跑了。BUT 若是对每个点这样做的话,肯定会TLE。所以考虑一次处理出所有询问的答案。在并查集将两个...
分类:
其他好文 时间:
2014-11-02 22:27:29
阅读次数:
590
不用Matrix-tree定理什么的,一边kruscal一边 对权值相同的边 暴搜即可。将所有方案乘起来。 1 #include 2 #include 3 using namespace std; 4 int n,m; 5 struct Disjoint_Set 6 { 7 int fa[1...
分类:
Web程序 时间:
2014-10-11 16:55:06
阅读次数:
232