随笔分类 -  ACM

摘要:单点更新模板(以区间求和为例) 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 using namespace std; 5 #define lson l,m,rt*2 6 #define rson m+1,r,rt*2+ 阅读全文
posted @ 2018-03-30 14:05 HDU_jackyan 阅读(300) 评论(0) 推荐(0) 编辑
摘要:首先明确一点:知二求一的前提条件是已知的两种遍历必须要存在中序遍历,因为先序遍历和后序遍历是负责找到根节点的而分不清左右子树交界的地方。 根据后序遍历和中序遍历输出先序遍历 采用递归的写法,每次“二分”(不断分成左边和右边两部分),通过后序遍历的最后一个值确定当前的根节点,然后根据根节点在在中序遍历 阅读全文
posted @ 2018-03-27 22:07 HDU_jackyan 阅读(359) 评论(0) 推荐(0) 编辑
摘要:最大流的各种变体与技巧: 1.存在多个源点和汇点,设置超级源点和超级汇点,使得超级源点连向各个源点,各个汇点连向超级汇点,边的容量都是INF 2.顶点也有限制的情况(即有点权),考虑拆点,将顶点拆成两个点,中间连一条容量为点权的边 3.若点与点之间的边为无向边,则各自方向建一条边(各自的容量都等于无 阅读全文
posted @ 2018-03-24 20:43 HDU_jackyan 阅读(217) 评论(0) 推荐(0) 编辑
摘要:【HDU】1532 Drainage Ditches(入门) [最大流] 3549 Flow Problem(入门) [最大流] 3572 Task Schedule(基础) [最大流]任务分配,判断满流 2732 Leapin' Lizards(较难) [最大流] 3338 Kakuro Exte 阅读全文
posted @ 2018-03-23 13:55 HDU_jackyan 阅读(239) 评论(0) 推荐(0) 编辑
摘要:基于BellmanFord求最短路的最小费用流模板 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 #include<queue> 5 #include<vector> 6 using namespace std; 7 c 阅读全文
posted @ 2018-03-19 21:58 HDU_jackyan 阅读(421) 评论(0) 推荐(0) 编辑
摘要:入门理解(给出例子直观感受到最大流和最小割的关系): 最近在看maxflow相关的资料,本文主要介绍下自己对最大流和最小割的理解。最大流本来是网络流方面的算法,后来在计算机视觉中也得到广泛的应用,如图割。我觉得要理解一个算法首先要从起源开始,然后再去泛化问题、建立模型,最后才是解决之。本文是以一个新 阅读全文
posted @ 2018-03-19 19:18 HDU_jackyan 阅读(508) 评论(0) 推荐(0) 编辑
摘要:EK模板 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 #include<queue> 5 #include<vector> 6 using namespace std; 7 const int maxn=205; 8 阅读全文
posted @ 2018-03-18 16:32 HDU_jackyan 阅读(619) 评论(0) 推荐(0) 编辑