主要参考 http://python.jobbole.com/85685/ 算法更新顺序 DFS : 存在多继承中无法重写问题 BFS:存在继承单调性问题 C3算法:算法像是 拓扑排序+优先最左 的方式 ...
分类:
编程语言 时间:
2018-11-02 17:59:34
阅读次数:
149
拓扑排序 从离散数学的角度定义,假设(A,≤)是有限偏序集,对其进行拓扑排序是指将其扩展成一个全序集,使得≤∈<,即对任意的a,b∈A,若a≤b,则a<b。 从图论的角度定义,对一个有向无环图G进行拓扑排序,是将G中所有的顶点排成一个线性序列,使得图中任意一对顶点u和v,如果(u,v)∈E(G),则 ...
分类:
编程语言 时间:
2018-11-02 17:16:16
阅读次数:
210
Solution 有向图要找最长路径的话,可以想到拓扑序转移。正反跑两边处理出每个点离起点和终点的最大值。访问每条边就能统计出经过每条边最长路径的长度。 问题是怎么统计出删除每个点的影响? 拓扑排序后,可以发现,删除层数靠后的点会对前面产生影响,因为此时想统计前面的边存在的最长路就不能判掉经过这个点 ...
分类:
其他好文 时间:
2018-10-28 20:54:18
阅读次数:
317
"传送门" 解题思路 感觉这种题都是套路,首先缩点判了环(没看见自环挂了一次。。),然后设$f[x][i]$表示到了$x$,$i$这个字母走过的最长距离,然后拓扑排序更新即可。 代码 cpp include include include include include using namespac ...
分类:
其他好文 时间:
2018-10-28 19:34:36
阅读次数:
183
Rank of Tetris Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 12344 Accepted Submission(s): 3497 ...
分类:
编程语言 时间:
2018-10-24 22:21:16
阅读次数:
255
一、题目 1、审题 2、分析 给出顶点数、指向当前顶点的前驱顶点,判断当前顶点组成的图是否是一个有向无环图。 二、解答 1、思路: 方法一、 采用拓扑排序 ①、定义数组 matrix[][] 存储从 i 指向 j 的边,curArr[] 存储指向当前顶点的边数。并初始化这两个数组; ②、将没有前驱的 ...
分类:
其他好文 时间:
2018-10-24 22:18:33
阅读次数:
200
题面 这个题是比较套路的做法啦,建反图后缩点+拓扑排序嘛,对于所有处在$size>=2$的SCC中的点都是无限解(可以一直绕) 然后注意统计的时候的小细节,因为无限解/大解也要输出,所以我们把这些点统一统计成36501,然后所有的方案都对36501取min就可以很方便的输出了 1 #include< ...
分类:
其他好文 时间:
2018-10-23 22:53:45
阅读次数:
189
Sorting It All Out Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 39602 Accepted: 13944 Description An ascending sorted sequence of distin ...
分类:
编程语言 时间:
2018-10-23 10:47:09
阅读次数:
160
1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 using namespace std; 12 int n,m,inbu... ...
分类:
编程语言 时间:
2018-10-23 00:12:55
阅读次数:
171
#include #include #include #include #include #include #include #include #include #include using namespace std; int n,m,inbug[110],sum; vectore[150]; v... ...
分类:
编程语言 时间:
2018-10-23 00:11:27
阅读次数:
139