摘要: 题目链接 我们发现如果图中存在桥,那么代表着两个双连通分量之间有且只有一条路径,那么改成有向图后显然两个连通分量之间的边构不成环。 那么当且仅当无向图是边双连通图时,有解。 接下来考虑在求桥时的 \(\text{tarjan}\) 算法,\(\text{tarjan}\) 算法本质上是在 \(\te 阅读全文
posted @ 2021-09-11 20:08 Themaxmaxmax 阅读(46) 评论(0) 推荐(0) 编辑
摘要: void tarjan(int x,int from){ dfn[x] = ++sz; for (int i = head[x]; ~i; i = fail[i]) { if (i == (from ^ 1)) continue; int v = edge[i]; if (dfn[v]) { if 阅读全文
posted @ 2021-09-11 19:21 Themaxmaxmax 阅读(85) 评论(0) 推荐(0) 编辑
摘要: 题目链接 考虑令 \(f[i,state]\) 为若当前局面剩余的(没被打败的)鱼为 \(state\) 最后赢的鱼是 \(i\) 的概率,维护 \(g[i,state]\) 为若当前局面剩余的(没被打败的)鱼为 \(state\) ,这一轮把鱼 \(i\) 淘汰的概率。 可以在 \(O(n^2\t 阅读全文
posted @ 2021-09-11 19:09 Themaxmaxmax 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 题目链接 定理:给定平面上 \(n\) 个点 \((x_i,y_i)\) ,覆盖这 \(n\) 个点的最小矩形大小为 \((\max(x_i)-\min(x_i))\times (\max(y_i)-\min(y_i))\) 。 因此我们令起点坐标 \((0,0)\) ,就可以得出可以到的所有点的相 阅读全文
posted @ 2021-09-11 17:20 Themaxmaxmax 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 1.图的连通性相关构造 将无向图改造成边双连通图的最优构造 下界:\(\lceil \dfrac{cnt}{2} \rceil\) 用最少的树上路径 / 添加尽量少的非树边覆盖整棵树的边(考虑带权重心)。 将有向图改造成强连通图的最优构造 下界:\(\max(|P|,|Q|)\) 下界证明 2.CF 阅读全文
posted @ 2021-09-11 14:14 Themaxmaxmax 阅读(21) 评论(0) 推荐(0) 编辑
摘要: 题目链接 令字符串每个位置的权值 \(S[i] \gets str[i]\ - \ 'a' + 1\) 。 那么我们要解决的问题即存在多少权值序列 \(T\) 可以被 \(S\) 操作出来。 一个广为人知的结论:如果允许我们交换任意相邻位置 \(i,i+1\) ,那么我们一定可以交换任意位置 \(i 阅读全文
posted @ 2021-09-11 14:10 Themaxmaxmax 阅读(38) 评论(0) 推荐(0) 编辑
摘要: 题目链接 若序列中的数互不相同,对于一个区间 \([l,r],l\le i\le r\) ,令 \(c_1\) 为区间中小于等于 \(a[i]\) 的位置的数量,\(c_2\) 为区间中大于 \(a[i]\) 的位置的数量。 对于 \(a[i]\) 在区间中的排名可以转化成小于等于 \(a[i]\) 阅读全文
posted @ 2021-09-11 10:53 Themaxmaxmax 阅读(42) 评论(0) 推荐(0) 编辑