随笔分类 -  图论—最短路

摘要:1.最小生成树: kruscal: 2.最短路: spfa(最好不要写,他死了)... dijisktra(这个比较好) 3.LCA 倍增版本: 树剖版本: 4.tarjan 有向图tarjan缩点+spfa最长路 无向图割边: 无向图割点: 5.网络流 最大流: 费用流: 有源汇上下界最大流 有源 阅读全文
posted @ 2019-07-12 15:56 lleozhang 阅读(472) 评论(0) 推荐(0) 编辑
摘要:不想写题解...这题就是在跑最短路的时候记录下每个点最短路树上可能的父亲,然后把每个点的父亲数量乘起来就行了 代码: 阅读全文
posted @ 2019-07-04 15:02 lleozhang 阅读(123) 评论(0) 推荐(0) 编辑
摘要:线段树优化建图板子题 首先暴力建图显然是不可取的,但是我们发现建图要求是点和区间之间的问题,所以考虑用线段树优化 但是怎么优化呢? 如果用一棵线段树很难处理同时出边和入边,因此我们考虑用两棵线段树(类似拆点),一棵线段树作为起点,另一棵线段树作为终点,然后在两棵线段树之间连边即可 这样的话连边的方式 阅读全文
posted @ 2019-07-04 11:01 lleozhang 阅读(454) 评论(0) 推荐(0) 编辑
摘要:这题不错... 首先,不难看到他想让你求出的是最短路树 然后,考虑到所有边权均为1,所以可以采用bfs直接生成最短路树 至于方案的储存,可以在加边的时候同时记录边的编号,然后对每个点维护一个能转移他的最短路的边的编号的集合,这样总的方案数就是所有的集合大小的乘积 然后用dfs在每个集合中选一个元素输 阅读全文
posted @ 2018-10-23 20:51 lleozhang 阅读(260) 评论(0) 推荐(0) 编辑
摘要:题意:给定一张n个点,m条边的无向联通图,其中m-n<=20,共q次询问,每次询问求给定两点u,v间的最短路长度 第一眼看见这题的时候,以为有什么神奇的全图最短路算法,满心欢喜的去翻了题解,发现就四个字“树上套环”! 其实这题的提示很明显:m-n<=20! 这说明,如果我们对这个图做一次生成树,那么 阅读全文
posted @ 2018-10-16 16:48 lleozhang 阅读(170) 评论(0) 推荐(0) 编辑
摘要:玄学的搜索与建图... 首先经过分析,可以得出几个结论: ①.移动棋子等价于移动空格 原因:如果一个棋子可以移动,那么这个棋子一定是和旁边的空格交换了位置,所以也就相当于是移动空格 ②.有价值的图的状态是有限的 原因:我们的目标是把起始棋子移到结束位置上,那么如果能够移动起始棋子,一定是把空格移到了 阅读全文
posted @ 2018-08-18 13:41 lleozhang 阅读(151) 评论(0) 推荐(0) 编辑

levels of contents
点击右上角即可分享
微信分享提示