随笔分类 - 图论-生成树
摘要:Case 1 题意要求给出下面代码的答案然后构造输入。给一个图, n 个点 m 条边 q 次询问,输出所有点对之间最大权值最小的路径。 题解把每一个询问的输出看成一条边,建一棵最小生成树。 Case 3 题意给输出,要求构造输入使得用所给代码运行后得到的输出和给出的输出相同。所给代码:n 次 Di...
阅读全文
摘要:题意给定一个n个点、m条边的带权无向图,其中有s个点是加油站。每辆车都有一个油量上限b,即每次行走距离不能超过b,但在加油站可以补满。q次询问,每次给出x,y,b,表示出发点是x,终点是y,油量上限为b,且保证x点和y点都是加油站,请回答能否从x...
阅读全文
摘要:题意n(1≤n≤2000)个数每个数是0或1,现在可以花费ci,j知道[i,j]的奇偶性,问将所有数都找出来的最小花费。 分析如果知道了所有的前缀和,那么我们就知道了所有数。对于区间[i,j],那么如果知道了sum[i1],那么就知道了$s...
阅读全文
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=2115题意:给出一个n个点m条边的无向连通边加权图,求1~n的某条路径使得异或值最大(可以重复点可以重复边)(nusing namespace std;const int N=50005, M=1000...
阅读全文
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=3669首先看到题目应该可以得到我们要最小化min{ max{a(u, v)} + max{b(u, v)} }两个变量不好做。。。那么我们约束一个a即按a从小到大排序,依次加边。发现当有环出现时,去掉的...
阅读全文
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=1016想也想不到QAQ首先想不到的是:题目有说,具有相同权值的边不会超过10条。其次:老是去想组合计数怎么搞。。。。。。。于是最sb的暴力都不会了。。所以这题暴力搞就行了orz依次加边,每一种边的方案数...
阅读全文
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=1050表示被暴力吓到了orz我竟然想不到。。。我竟然还想到分数规划,,但是不可做。。。然后又想到最小生成树,,然后不会做orz我一直在纠结怎么最大化(或最小化)分母和最小化(或最大化)分子的做法。。。。...
阅读全文
摘要:好神的一题。。一开始没想多久就看题解了QAQ。。首先我们发现,这棵树任意两个点的边一定是最小的(即所有其它这两个点的路径都比这条边大,才有可能出解)然后生成树后再算距离判断即可。。注意特判n=1.。。。。。。。。。。。。。。。。。还有出题人一点都不良心。。。说好的0#include #include...
阅读全文
摘要:算法:最小生成树的算法有:Prim(O(nlgn)),Kruskal(O(nlg**n)),Prim在某些场合很好用,某些场合必须用。。。Kruskal的话最快。。技巧及应用:当看到要求连通一个图的最小代价,显然最小生成树,例如【BZOJ】1601: [Usaco2008 Oct]灌水(kruska...
阅读全文
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=3390。。#include #include #include #include #include #include #include using namespace std;#define rep(i...
阅读全文
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=1682最小生成树裸题。。#include #include #include #include #include #include #include using namespace std;#defin...
阅读全文
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=1626依旧是水题。。太水了。。#include #include #include #include #include #include using namespace std;#define rep(...
阅读全文
摘要:http://wikioi.com/problem/1403/一开始的确感觉和bzoj1003很像,不同的是这里还要求联通,求最小的边。我们可以想到用最小生成树(为嘛我自己想不到呢。。)我们可以设d[i][j]表示i-j天不改变方案的最小边权和(并且是可行的,如果不可行,d[i][j]=inf)我们...
阅读全文
摘要:http://wikioi.com/problem/1002/今天开始又开始刷水了哈T_T。照着hzwer神犇的刷题记录刷!!!题解:一开始我也不会,但是我想到了直接爆搜T_T。好吧,题解。首先对于第一个问,我们直接深搜就行了,沿着相连的城市走(ps,这里很坑啊啊啊,左上角和右上角还有左下角右下角也...
阅读全文
摘要:http://www.lydsy.com:808/JudgeOnline/problem.php?id=1821这题裸题。本题要求最短距离最长,很明显,我们排序。这里存在贪心,即我们把边权最小的全分给n个部落的内部,然后剩下的边最小的就是答案。将边权较小的边分给k个部落,用并查集生成最小树,使得内部...
阅读全文
摘要:http://tyvj.cn/Problem_Show.aspx?id=1307kruskal裸题。(水题红色警报)#include #include #include #include #include #include using namespace std;#define rep(i, n) ...
阅读全文
摘要:题目链接算法: 最小生成树PS:被卡过2天(中间的时间没去做)。日期:2013-09-13 13:49:47 ~ 2013-09-17 13:01:07此题为基础题刚开始学图论时只会用Kruskal+并查集,以为Kruskal和Prim差不多= =于是就用Kruskal来做这题,结果是不用说的然后就...
阅读全文
摘要:其实我在学最短路之前就学了生成树了,现在接着写。本文介绍2种算法:Kruskal,PrimPS:文中分大小写。 图为G(V,E),V为节点集合,E为边集合,但v表示某个节点(v∈V)其实很多都和最短路差不多的,松弛操作不同而已。前提:连通图Kruskal:原理:通过排序每一条边(权值递增)从|E|条...
阅读全文