随笔分类 -  图论

摘要:"题面" 题解 两问分开考虑 对于第一问, 每条线路建一个点, 线路上的站点向该点连一条 1 的边, 该点向线路上的点连一条 0 的边 直接最短陆即可 对于第二问 假设代表某条线路的点 $i$ 的 $dis$ 为 $d$ 那么他所连接的站点要么 $dis$ 为 $d$, 要么 $dis$ 为 $d 阅读全文
posted @ 2020-02-24 21:13 ztlztl 阅读(173) 评论(0) 推荐(0)
摘要:"题面" 题解 发现一种地要么归 $A$ , 要么归 $B$ , 若相邻两块归属不同还有额外代价 那么 $A$ 买就连源点, $B$ 买就连汇点 总收益加上这些值 中间连代价的双向边 答案为总收益减去最小割 Code 阅读全文
posted @ 2020-02-24 20:54 ztlztl 阅读(123) 评论(0) 推荐(0)
摘要:"题面" 题解 可以发现, 若 $u$ 到 $v$ 可由从 $u$ 到 $v$ 的另外一条路径而不走 $(u, v)$ 边到达, 则 $(u, v)$ 可删 正反用 bitset 维护一下传递闭包即可 Code 阅读全文
posted @ 2020-02-24 20:48 ztlztl 阅读(141) 评论(0) 推荐(0)
摘要:"题面" 题解 容易想到二分, 问题是如何 check 发现对于一个点, 他能够选的只有两种, 对于他连的点, 能够选的也只有两种 又因为总共只有三种方案, 那么一条边连的两个点最少会有一种一样的 那么这个选了这种, 那个就不能选这种, 那个选了这种, 这个就选不了这种 嗯, 是个 2 sat Co 阅读全文
posted @ 2020-02-11 20:54 ztlztl 阅读(107) 评论(0) 推荐(0)
摘要:"题面" 题解 结论题 第一问直接 tarjan 第二问就是 tarjan 后缩点, DAG 中入度为 0 的点和出度为 0 的点的个数取 $min$ Code 阅读全文
posted @ 2020-02-11 20:34 ztlztl 阅读(158) 评论(0) 推荐(0)
摘要:"题面" 题解 看哪些事件不发生也对答案没有影响 假如说这件事不发生, 那么他的前驱都不会发生 然后把所有入度为零并且不是这件事的前驱的点全部设为发生, BFS 一遍, 看那 M 个是否都能发生 若能, 则该事件不一定发生 若不能, 该事件一定发生 复杂度 $O(nm)$ Code 阅读全文
posted @ 2020-02-10 20:25 ztlztl 阅读(167) 评论(0) 推荐(0)
摘要:"题面" 题解 将所有点根据𝑥排序后, 相邻的连一条双向边 正确性: 若对于两个点的𝑑𝑖𝑠是由𝑥来更新, 则𝑑𝑖𝑠会等于中间所有点之间相邻的边的和 如果是由𝑦更新呢? 再根据𝑦排序后, 相邻的连边即可 代码 阅读全文
posted @ 2019-11-06 17:18 ztlztl 阅读(123) 评论(0) 推荐(0)
摘要:题面 怎么是权限题啊 题解 有一次考过, 但是不记得了 如果每个点都是加油站的话, 这道题就是货车运输 考虑如何转化 我们可以设𝑑𝑖𝑠[𝑖]为𝑖到离他最近的加油站的距离, 𝑖𝑑[𝑖]记录的是离𝑖最近的加油站是哪一个 最短路转移即可 然后对于原图中每一条边(𝑢,𝑣,𝑤), 若� 阅读全文
posted @ 2019-11-06 17:16 ztlztl 阅读(110) 评论(0) 推荐(0)
摘要:"题解" 题解 考虑到正着跑不好想, 我们尝试反向跑 以每个终点作为起点, 维护每个点的最小值和次小值(最小的被老虎ban掉了) 转移的时候用当前点的次小值去更新其所连的点的最小值和次小值 由于最小的次小值不能被其他次小值所更新, 所以我们可以使用dijkstra 把每个终点丢进去跑dijkstra 阅读全文
posted @ 2019-07-14 16:37 ztlztl 阅读(256) 评论(0) 推荐(0)
摘要:"题面" 题解 对于到某个点$i$, 我们有两个条件 到达$i$点的最短时间, 用$dis1_i$表示 破坏完所有保护$i$点的城市的最小时间 两者取$max$即到$i$点的最小时间 对于破坏某个城市的保护点, 用类似于拓扑序的方式处理即可 Code cpp include include incl 阅读全文
posted @ 2019-07-14 16:07 ztlztl 阅读(151) 评论(0) 推荐(0)
摘要:"题面" 题解 考虑kruscal的过程 对于三个点$x, y, x + 1$, 我们可以将$(x, y, z), (y, x + 1, z + 1)$看做$(x, y, z), (x, x + 1, z + 1)$ 因为当连完$(x, y, z)$后, $x$与$y$已经联通, 所以$(y, x 阅读全文
posted @ 2019-07-14 16:00 ztlztl 阅读(179) 评论(0) 推荐(0)
摘要:"题面" 题解 考虑在什么情况下此夫妻离婚后仍有n对夫妻 将男性看做黑点, 女性看做白点, 情侣关系和夫妻关系看做边 则若这对夫妻在一个黑白交错, 情侣关系和夫妻关系交错的一个环上(画图理解一下) 这对夫妻就是不安全的 考虑将边定向, 婚姻关系为女向男连边, 情侣关系为男向女连边 则若夫妻都在同一个 阅读全文
posted @ 2019-07-14 15:50 ztlztl 阅读(194) 评论(0) 推荐(0)
摘要:"题面" 题解 可以将题目转化为在满足宽度互不相同的情况下最大化长度之和 将一个矩形的$a$与$b$连一条边, 定义边的出点和入点分别代表选择该点的值作为宽度一次, 选择该点的值作为高度 所以我们要做的就是将$a$到$b$这一条边定向 除此之外, 还要注意到每个点至多被作为出点一次, 这也满足了我们 阅读全文
posted @ 2019-07-13 22:27 ztlztl 阅读(201) 评论(0) 推荐(0)
摘要:"题面" 题解 对于同一个图中的最小生成树, 有如下性质 1. 对于不同最小生成树中同一权值的边的数量是一定的, 可通过反证法证明, 在这里就不证了 2. 对于任意正确加边方案, 加完小于某权值的边后连通性是一样的 所以根据以上性质, 可以判断某一权值能否在一棵最小生成树中同时出现, 具体方法如下 阅读全文
posted @ 2019-07-13 21:05 ztlztl 阅读(245) 评论(0) 推荐(0)