随笔分类 - 拓扑排序
摘要:http://codeforces.com/contest/825/problem/E 一道裸的拓扑排序题。为什么需要反向拓扑排序呢?因为一条大下标指向小下标的边可能会导致小下标更晚分配到号码,导致字典序增大。而反向拓扑排序在上述情况,只会使大序号更晚分配到序号,而小序号还是较小的,根据字典序比对规
阅读全文
摘要:比赛的时候写了个记忆化搜索,超时了。 后来学习了一下,这种题目应该用拓扑排序+DP来做。 dp[][]保存走到[第i个节点][走过j个点]时所用的最短时间。 pre[][]用前驱节点求路径 然后遍历一下dp[n][],求满足t范围的最大下标。
阅读全文
摘要:将DAG图转化为顺序排列的形式 可应用于DP求最长路、基于两两优劣关系求排名等题型。 前向星版代码: 邻接表版代码:
阅读全文