随笔分类 -  图论

摘要:最大流 不想讲挺多关于板子的东西 还是,会个Dinic就可以开始做题了 Dinic板子练手 常见的套路就是拆点之类的东西 还有一些是二分图之类的东西,二分图是比较好看出来的 讲个拆点的再讲个二分图先 可以用网络流的数据范围都不大, 差不多n,m=100 拆点 应该都知道最大流,流的属性体现在边上 阅读全文
posted @ 2022-11-20 10:25 2K22 阅读(20) 评论(0) 推荐(0) 编辑
摘要:这一篇主要是讲:点分治,也是树分治的一个入门? 点分治 解决一类路径相关问题,考虑点分治 点分治,其实叫分类讨论差不多? 树是一棵无根树,先随便钦定一个根节点 首先我们把所有路径划分成两类: 1.经过当前根节点 统计经过该节点路径的合法条数 2.不经过当前根节点 不管,因为以后会管到的 向下递归,一 阅读全文
posted @ 2022-10-11 21:27 2K22 阅读(24) 评论(0) 推荐(0) 编辑
摘要:2-SAT 模板 有 n 个布尔变量 x1xn, 另有 m 个需要满足的条件,每个条件的形式都是 「xi 为 true / false 或 xj 为 true / false」。 比如 「x1 为真或 x3 为假」、「x7 为假或 $x_ 阅读全文
posted @ 2022-08-19 10:34 2K22 阅读(28) 评论(0) 推荐(1) 编辑
摘要:适用于DAG,即有向无环图 定义: 设xDAG上的一个点, x的入度:所有终点为x的边的数量 x的出度:所有起点为x的边的数量 一开始进队的点是所有入度为0的点 然后把所有以这个点为起点的边删掉 具体操作就是直接让这条边的入度减一即可 然后如果终点出度为0就入队 阅读全文
posted @ 2022-08-14 11:24 2K22 阅读(22) 评论(0) 推荐(0) 编辑
摘要:这是图论专题 阅读全文
posted @ 2022-08-03 20:51 2K22 阅读(15) 评论(0) 推荐(0) 编辑
摘要://去你妈的,关于SPFA,它活了 原理 其实SPFA就是干这玩意的 由于差分约束的标准形式xixjb 和最短路的三角不等式极为相似,(三角不等式是BellmanFord最短路算法原理) 于是考虑直接建图跑最短路 建图 我学的建图方式是: 对于$x_i-x_j\ 阅读全文
posted @ 2022-08-01 12:03 2K22 阅读(23) 评论(0) 推荐(1) 编辑
摘要:~~估计这玩意不会有2了~~ 基环树的形态就是在一棵树上随便加一条边,这就是无向基环树 有向基环树分内向和外向 内向树是对于任何一个树上结点,这个节点总是可以到达环上节点 外向树就是反过来 然后对于这玩意的处理: 1.把环上一条边断掉当作树处理,然后考虑加上这条边的情况 2.分开处理环(断环成链)和 阅读全文
posted @ 2022-07-25 11:55 2K22 阅读(42) 评论(0) 推荐(0) 编辑
摘要:重链剖分维护的是重儿子和由一系列重儿子形成的链 重儿子就是当前节点的子节点中子树节点最多的那个子树的根节点 于是就讲了个大概 板子 题目描述 如题,已知一棵包含 N 个结点的树(连通且无环),每个节点上包含一个数值,需要支持以下操作: 1 x y z,表示将树从 xy 结点最短路径 阅读全文
posted @ 2022-07-03 09:32 2K22 阅读(48) 评论(0) 推荐(0) 编辑
摘要:“全是板子题“——gtm1514 这样用脑子的板子题我头一次见 二分图判定板子 点击查看代码 bool dfs(int now, int fa, int color) { col[now] = color; for (int i = head[now]; i; i = e[i].nxt) { int 阅读全文
posted @ 2022-04-28 15:48 2K22 阅读(30) 评论(0) 推荐(0) 编辑
摘要:主要内容是LCA的板子 1.倍增LCA 原理:尝试法,二进制划分和倍增 打法: 1.首先预处理每个节点在整棵树中的深度和关键信息 2.对于节点x,预处理每个2的j次方所能到达的点,这里递归变递推 3.询问lca的时候,首先调整节点的深度,较深的节点走到与较浅节点同深度位置 4.如果y走到x的位置,那 阅读全文
posted @ 2022-04-17 18:23 2K22 阅读(64) 评论(0) 推荐(0) 编辑
摘要:会板子,考场上要打出来 阅读全文
posted @ 2022-02-16 10:47 2K22 阅读(91) 评论(0) 推荐(0) 编辑
摘要:Prim:类似于Dijsktra算法 不过两者同源(看模板就会发现这俩长得都像套了BFS模板,事实上这两个算法都借鉴了BFS的思想) code(先咕了) 点击查看代码 #include <bits/stdc++.h> using namespace std; const int p=222; int 阅读全文
posted @ 2022-02-10 20:28 2K22 阅读(29) 评论(0) 推荐(0) 编辑
摘要:~~被这几个板子折磨~~,打一打最近学的最短路模板 1.Floyd朴素算法 优点:编程复杂度低,并且状态转移方程可以多变 缺点:时空复杂度高,不易优化 最短路 #include <bits/stdc++.h> using namespace std; #define map mymap const 阅读全文
posted @ 2022-02-07 21:22 2K22 阅读(41) 评论(0) 推荐(0) 编辑

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