图论
zzuzxy
牛顿说:“我不知道世人怎样看我,但我自己以为我不过像一个在海边玩耍的孩子,不时为发现比寻常更为美丽的一块卵石或一片贝壳而沾沾自喜,至于展现在我面前的浩翰的真理海洋,却全然没有发现。”
展开
-
图论常用算法
图论常用算法最小生成树Prim算法(普利姆算法)关键问题Krustral算法(克鲁斯卡尔算法)关键问题最短路径拓扑排序关键路径网络流问题图论常用算法最小生成树首先, 什么是最小生成树 图论基础Prim算法(普利姆算法)采用prim算法解决生成树问题 假设G=(V,E)是一个具有n个顶点的连通网,T=(U,...原创 2017-08-16 13:44:24 · 3068 阅读 · 0 评论 -
POJ1523--SPF
特判根的情况,根的时候如果是割点,去掉之后的连通分量的个数原创 2018-08-24 00:10:38 · 196 阅读 · 0 评论 -
LCA问题
LCA问题1 倍增法// POJ 1330const int maxn = 1e4+100;const int maxlogv = 14;vector<int> G[maxn];int root;int parent[maxlogv][maxn];int depth[maxn];void dfs(int v,int p,int d){ parent...原创 2018-08-29 13:16:47 · 835 阅读 · 0 评论 -
D. Made In Heaven
K短路A*算法#include<bits/stdc++.h>using namespace std;#define INF 0xffffffconst int MAXN = 2e6;typedef long long ll;struct node{ ll to; ll val; ll next;};struct node2{ l...原创 2018-09-08 22:12:22 · 386 阅读 · 0 评论 -
Red Black Tree ZOJ - 4048
LCA+二分#include <bits/stdc++.h>#define mem(ar,num) memset(ar,num,sizeof(ar))#define me(ar) memset(ar,0,sizeof(ar))#define lowbit(x) (x&(-x))#define Pb push_back#define FI first#defin...原创 2018-09-19 00:30:35 · 233 阅读 · 4 评论 -
洛谷 P4886 快递员 树的重心
文章目录洛谷 P4886 快递员题意分析参考代码洛谷 P4886 快递员题意在一个树上有m对点(ui,vi),(u_i,v_i),(ui,vi), 我们在这个树上选择一个点root 使得distance(root,vi)+distance(root,ui)distance(root,v_i)+distance(root,u_i)distance(root,vi)+distance(ro...原创 2018-09-30 16:45:21 · 339 阅读 · 0 评论 -
图论建图
文章目录图论建图初衷例题图论建图初衷搜集各种各样的建图技巧或者建模想法例题1 G Cordon Bleu题意: n个人,m瓶酒,n个人和m瓶酒各有一个位置,现在要用这n个人将这些酒全部运送到酒店R,不必用上所有的人,每一千米的费用是固定的c,问至少费用是多少?分析:建一个超级源点s,向m瓶酒分别连一个容量为1,费用为0的点,然后将这m瓶酒和(n个人,酒店)分别连边,权值 (...原创 2018-11-21 00:46:13 · 310 阅读 · 0 评论 -
河南省ccpc省赛F题
2527: THE END IS COMING!!!我们只有 5 种元素,所以可以全部分开考虑每种元素单独考虑每个点拆成两部分,一个用于接受元素,一个用于往外送元素。源点向每个点的接受元素部分建立流量为当前节点需要元素数量,费用为 1 的边。向用于外送元素的部分建立流量为当前节点需要元素数量,费用为 0 的边。外送元素部分向所有能及时赶到的部分建立流量为正无穷,费用为 0 的边,意味着...原创 2019-04-16 00:38:39 · 201 阅读 · 0 评论 -
Codeforces Round #558 (Div. 2)
文章目录Codeforces Round #558 (Div. 2)A - Eating SoupB- Cat PartyC2 - Power Transmission (Hard Edition)Codeforces Round #558 (Div. 2)退役打cf第一场A - Eating Soup注意考虑全面即可int a,b;cin>>a>>b; ...原创 2019-05-10 09:54:53 · 423 阅读 · 0 评论 -
2019杭电多校第一场
文章目录ABlank题意:分析:参考代码ABlank题意:求长度为n,n≤100n,n \leq 100n,n≤100,满足[l,r][l,r][l,r] 中有xxx个不同元素的数组的个数 (1≤x≤4)(1\leq x\leq4)(1≤x≤4)分析:注意到数组的范围很小,容易联想到dp来做,关键是怎么确定状态呢?考虑到计数问题填每一个位置的方案数以及题目[l,r][l,r][l,r]...原创 2019-07-31 23:21:20 · 219 阅读 · 0 评论 -
2019牛客暑期多校训练营(第二场)(除C外)
文章目录A Equivalent Prefixes题意分析A Equivalent Prefixes题意给定长度为n的环,编号0,1,2,....n−10,1,2,....n-10,1,2,....n−1,起始点在0,每一次可以向前向后走一格,问走完所有的格子之后所在的位置为M的概率。分析...原创 2019-07-20 22:47:56 · 178 阅读 · 0 评论 -
DFS 的应用
DFS的应用1. 求无向图的联通分量2. 求无向图的双连通分量3. 求有向图的强连通分量4. 拓扑排序5. 二分图判断原创 2018-08-26 23:06:37 · 595 阅读 · 0 评论 -
最小生成树
最小生成树原创 2018-08-13 10:41:11 · 2274 阅读 · 0 评论 -
POJ - 1639 最小限制生成树
Picnic Planning POJ - 1639最小题目大意有若干个点, m条路, 给出路的起点,终点,权值,并且有一个点的度数有限制小于等于K, 求这棵树最小的权值和是多少题目解读抽象出来就是由限制的最小生成树 限制就是某个结点的度数小于等于K 如何求解此类问题最小K度限制生成树; 具体实现步骤如下算法顺序1 首先利用kruskal 算法求出各连通分量的最小生成树权值的和,并记录有边(这原创 2017-08-18 15:57:12 · 307 阅读 · 0 评论 -
次小生成树
The Unique MST POJ - 1679const int LEN = 100000;//有多少条边const int LEN2 = 110;//有多少个点int N,M;struct Node{ int x; int y; int weight;};Node node[LEN];bool operator <(const Node &a,const N原创 2017-08-22 01:01:22 · 270 阅读 · 0 评论 -
最大流以及费用流刘汝佳算法竞赛入门经典模板
最大流模版EdmondsKarp算法, (刘汝佳算法竞赛入门经典)#include &lt;cstdio&gt;//C语言io#include &lt;cstring&gt;//以下是c语言常用头文件#include &lt;cmath&gt;#include &lt;cstdlib&gt;#include &lt;ctime&gt;原创 2017-08-25 21:41:08 · 376 阅读 · 0 评论 -
拓扑排序 Rank of Tetris HDU - 1811
Rank of Tetris HDU - 1811题目大意 给出n个结点, 并给出这n个结点之间的关系, > , < ,= , 判断是否能够确定任意两者之间的顺序, 或者是否重复, 还是条件不足分析 需要基础知识: 拓扑排序与并查集,题目关键在于相等的情况, 相等的时候直接合并两个结点或集合, 然后对剩下的元素进行拓扑排序参考代码...原创 2017-08-24 18:55:18 · 263 阅读 · 1 评论 -
图论 ACM 算法竞赛
图论学习资料图论五百题看到了有大神刷了五百题的图论, 感慨万千, 路漫漫其修远兮, 吾将上下而求索 图论五百题 以此为志超级好的博客ACdreamer图论基础知识2017/8/14 图论1. 什么是图, 一种高级数据结构, 三元组组成 ,V,点的集合, E ,边的集合, ψ是从边集合E到结点无序偶(有序偶)集合上的函数原创 2017-08-15 22:19:09 · 1456 阅读 · 0 评论 -
Task Schedule HDU - 3572
Task Schedule HDU - 3572题意有n个项目, m台机器,一台机器同一时间只能完成一个项目, 一个项目可以在多个机器上完成, 给出这n个项目可以开始建设的时间和截止时间及需要多少天完成, 问是否可以在规定时间内完成所有项目分析1 建立模型, 用什么方法解决这种问题, 我们看到一天之内最多可以完成m个工作量, 完成一个项目需要的工作量, 这些都可以用流来表...原创 2017-08-29 20:37:51 · 252 阅读 · 0 评论 -
L2-001. 紧急救援
L2-001. 紧急救援最短路+一些细节操作#include&lt;bits/stdc++.h&gt;using namespace std;int N,M,S,D;const int maxn = 500+100;int num[maxn];int away[maxn][maxn];int dis[maxn];bool vis[maxn];const int INF ...原创 2018-03-28 17:21:31 · 229 阅读 · 0 评论 -
畅通工程 hdu 1232 && HDU - 1863 (并查集+最小生成树)
畅通工程hdu 1232并查集Problem DescriptionInputOutput参考代码HDU - 1863Problem DescriptionInputOutput参考代码畅通工程hdu 1232并查集题目地址 畅通工程Problem Description 某省调查城镇交通状况,得到现...原创 2017-08-17 16:36:01 · 824 阅读 · 0 评论 -
二分图匹配问题
二分图算法匈牙利算法求最大匹配KM算法求最大权完美匹配二分图算法解释很好的博客强烈推荐匈牙利算法求最大匹配遍历左节点寻找增广路如果找到增广路,则匹配++const int maxn = 1000+10;vector&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;int原创 2018-08-07 19:09:40 · 540 阅读 · 0 评论 -
2019中国大学生程序设计竞赛(CCPC) - 网络选拔赛 1004 path
#include <bits/stdc++.h>#define mem(ar,num) memset(ar,num,sizeof(ar))#define me(ar) memset(ar,0,sizeof(ar))#define lowbit(x) (x&(-x))#define Pb push_back#define FI first#define SE s...原创 2019-08-23 18:00:44 · 269 阅读 · 0 评论