随笔分类 - 算法竞赛 / 图论
能否找到AC的最短路呀
摘要:DFS序及其应用 定义 按照深度优先搜索(DFS)的访问顺序对树节点进行排序,即得到树的dfs序。 性质 在dfs序中,每个节点及其整个子树的节点的dfs序是一段数值连续的编号 因此对于子树的操作,就可以转化成对于一段区间的操作。可以与 线段树 和 树状数组 结合使用。 包括后续的 树链剖分。 基本
阅读全文
摘要:Kruskal 重构树学习笔记 参考博客 链接 性质 这里给定最小生成树 Kruskal 重构树 的性质,那么最大生成树 Kruskal 重构树 的性质可以同理得。 重构树是一棵恰有 n 个叶子节点的完满二叉树,每个非叶子节点都有两个儿子,共有 2n−1 个点。(初始图中的 n 个点是叶子,由于是棵
阅读全文
摘要:Ring Road 2 题目链接 思路:先考虑什么情况下会相交,对于两条道路 \((x_1,y_1)\) 和 \((x_2,y_2)\) 。这里默认 \(x < y\) ,显然 当 $x2 < x1<y2 $ 并且 \(y1<x2\) || \(y1>y2\) 时(\(x1\) 和 \(y1\) 互
阅读全文
摘要:P3007 [USACO11JAN] The Continental Cowngress G 题目链接 思路:2-SAT模板,经典的或条件,那么直接建图即可,对于可行解,我们直接枚举每个方案支持和反对,然后染色判断即可。 代码: #include<bits/stdc++.h> using names
阅读全文
摘要:Catowice City 题目链接 思路: 第 \(i\) 个人认识第 \(j\) 只猫,所以选了第 \(i\) 个人就必须选第 \(j\) 个人,那么我们连一条 \(i\) 指向 \(j\) 的边。 那么同一个连通分量中就必须同时选择。考虑不能对其他猫产生影响,我们可以选择一个没有出边的强连通分
阅读全文
摘要:P5782 [POI2001] 和平委员会 题目链接 思路: 因为 \(u\) 和 \(v\) 矛盾,即 \(\lnot (u \land v)\)。 转化成 \(\lnot u \lor \lnot v\) 。那么根据 \(2-SAT\) 标准处理方式。转化为: \((u \rightarrow
阅读全文
摘要:P4171 [JSOI2010] 满汉全席 2-SAT 题目链接 思路: 2-SAT模板题,我们将满席定为1,汉席定为0.那么建边即可。判断同一道菜满汉是否在强联通分量中即可。 注意多测清空!!! 代码: vector<int> e[N]; stack<int> stk; int dfn[N],lo
阅读全文
摘要:2-SAT 2-SAT,简单的说就是给出 \(n\) 个集合,每个集合有两个元素,已知若干个 \(<a,b>\),表示 \(a\) 与 \(b\) 矛盾(其中 \(a\) 与 \(b\) 属于不同的集合)。然后从每个集合选择一个元素,判断能否一共选 \(n\) 个两两不矛盾的元素。显然可能有多种选择
阅读全文

浙公网安备 33010602011771号