
拓扑
文章平均质量分 69
StaroForgin
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
[硫化铂]舰队游戏
天天被OneInDark吊打,还有没有天理呀!ε(┬┬﹏┬┬)3原创 2022-04-02 16:49:01 · 3767 阅读 · 1 评论 -
[AGC001F]Wide Swap
被校监嘲讽难度递减...原创 2022-01-20 10:44:06 · 429 阅读 · 0 评论 -
[ABC209E]Shiritori
Capital lives matter!!!原创 2021-07-12 22:08:04 · 394 阅读 · 3 评论 -
[CF1534F1/2]Falling Sand
WA on test 213 是什么概概念,有的...原创 2021-06-20 23:03:10 · 299 阅读 · 0 评论 -
[CF894E]Ralph and Mushrooms
Ralph and Mushrooms 题解 首先,我们可以对这个图根据连通分量进行缩点,因为当进入一个连通分量后,其中的每个点都是可以被采完的。 于是,我们可以先将每条边对当前块的贡献维护出来加到块中,每个块的权值为 令,。 之后再通过拓扑序将最大的一条路径求出来即可。 源码 #include<bits/stdc++.h> using namespace std; #define MAXN 1000005 typedef long long LL; typedef unsign原创 2020-08-23 18:08:39 · 167 阅读 · 0 评论 -
[CF1100E]Andrew and Taxi
Andrew and Taxi 题解 很容易发现,所选边权的最大值是具有单调性的,于是我们就想到了二分。 可以先二分最大值,将比它大的边都加入图中,利用dfs判断是否有环。 至于最后如何构造,可以将拓扑序小的连向拓扑序大的,因为后者永远无法到达前者,所以这样最后得到的图一定是合法的。 源码 #include<bits/stdc++.h> using namespace std; #define MAXN 100005 typedef long long LL; typedef un原创 2020-08-23 16:52:39 · 153 阅读 · 0 评论 -
[CF915D]Almost Acyclic Graph
Almost Acyclic Graph 题解 看到数据范围,应该很容易就想到了枚举每一条边去掉的情况。 至于如何判断剩下的图是否无环,可以通过拓扑来进行判断,但时间复杂度达到了,明显会T。 于是,我们就想到了,枚举一个点是否去掉一个入度,再通过拓扑判断是否有环,毕竟我们并不需要知道每个点的拓扑序,只需要知道最后是否有环,去掉一个入度不会产生影响。 时间复杂度。 源码 #include<bits/stdc++.h> using namespace std; #define MAX原创 2020-08-23 16:43:43 · 120 阅读 · 0 评论 -
[CF650C]Table Compression
Table Compression 题解 这不是离散化板题吗?WA穿了 看到这题应该很容易想到拓扑,根据每一行每一列的的相对大小关系建图,它的大小就是它的拓扑序。 然后,笔者又WA穿了。 我们还需要对同一行与同一列中值相等的点进行缩点,从而保证他们的值相同。 在缩完点后再建图跑一遍拓扑即可。 源码 #include<bits/stdc++.h> using namespace std; #define MAXN 1000005 typedef long long LL; typ原创 2020-08-23 16:33:35 · 129 阅读 · 0 评论 -
[CF1220E]Tourism
Tourism 题解 很容易一个点只有在进入一条直达叶子节点的链才会停止,否则,它是可以到达图中的任意一个点的。 于是,我们可以通过拓扑序将这些链上点到叶子节点的和求出来,之后剩下的点一定在环上。 将它们全部加起来,加上有拓扑序的点中和最大的一个,就是答案。 源码 #include<bits/stdc++.h> using namespace std; #define MAXN 200005 typedef long long LL; typedef unsigned long l原创 2020-08-23 16:22:32 · 188 阅读 · 0 评论 -
Slow Path Finding Algorithm
题解 本题使笔者认识到了memset导致超时的痛苦。本题只需要打一个简单的最短路即可,每次将入度为0的点加入队列,去掉与它相连的边,并更新最小值,记住别打memset,这道题专门卡memset。 源码 #include<cstdio> #include<cstring> #include<cmath> #include<iostream...原创 2019-11-07 16:10:21 · 200 阅读 · 0 评论