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