图论——拓扑排序
sdau_blue
念念不忘,必有回响。驰而不息,功不唐捐。
展开
-
#1174 : 拓扑排序·一
这道题就是裸的拓扑排序。 时间限制:10000ms单点时限:1000ms内存限制:256MB描述由于今天上课的老师讲的特别无聊,小Hi和小Ho偷偷地聊了起来。小Ho:小Hi,你这学期有选什么课么?小Hi:挺多的,比如XXX1,XXX2还有XXX3。本来想选YYY2的,但是好像没有先选过YYY1,不能选YYY2。小Ho:先修课程真是个麻烦的东西呢。小Hi:没错...原创 2018-03-18 17:28:52 · 132 阅读 · 0 评论 -
#1175 : 拓扑排序·二
这道题还蛮好玩的,题目中已经暗示了规律,就是前边节点的总和。不知道如果题目不告诉这条信息我能不能get到。代码就是很气,不知道为什么如果把拓扑函数里的计算B【i】总和的函数写到主函数中就WA。至今没觉的哪里有区别。 时间限制:10000ms单点时限:1000ms内存限制:256MB描述小Hi和小Ho所在学校的校园网被黑客入侵并投放了病毒。这事在校内BBS上立刻引起了大家...原创 2018-03-18 17:32:18 · 161 阅读 · 0 评论 -
拓扑排序—入门简单题—Genealogical tree
题目链接题目大意:给出n个点,给出n种关系,第i行对应i->x(先后顺序),求出一个序列,使得满足以上所有的关系.如果有多个这样的序列,求出一个就行。测试数据有大于等于1个的序列。思路:这是最基本的拓扑排序的题,用G[maxn]用来存图,入度为0存一个,ans用来存输出顺序。代码: #include<cstdio> #include<cstri...原创 2018-01-27 11:40:55 · 344 阅读 · 0 评论 -
Sorting It All Out (拓扑排序)
题目大意:给你字母表的前N个大写字母和M个大小关系(即有向边)。所有的边按顺序给你,要你在能判断出全序或矛盾的时候及时输出(即当输入i条边的时候,出现了有向环或已经全序了,那么应该及时输出,),或者直到最后也不能出现全序。题目分析: 我们只需要对于每一条边(共M条有向边)都调用一次topo排序,看看能否出现结果或者出现矛盾即可. 如果能topo排序就说明没有矛盾,但是可能是全...原创 2018-01-28 15:36:34 · 713 阅读 · 1 评论 -
Reward (拓扑排序求深度)
这道题的坑点在于可能会有人得到相同的奖金,而我第一次在做的时候就没有考虑这个问题,用的很基础的拓扑。这道题需要考虑深度。依然用的拓扑排序的方法,不过我们分解图的过程中只需要计算出每个节点所在的树层次即可.求一个节点的深度一定要注意:由于我们采用了队列结构,所以若u是正好能使得v入度归0的点,那么u一定是所有指向v点的点中深度最大的(这个自己画个图验证一下).题目链接:https://cn....原创 2018-01-28 15:41:14 · 382 阅读 · 0 评论 -
拓扑排序(板子)
1.从1-n编号的。判断DAG(有向无环图)是否有拓扑序列。模板代码:#include<bits/stdc++.h>using namespace std;const int maxn=1000;vector<int>G[maxn];int n,m;int in[maxn];bool topo(){ queue<int>Q; ...原创 2018-01-20 20:50:12 · 618 阅读 · 0 评论