因为补上周的codeforces,涉及到一些不熟悉的知识,先基础题练习一下。
题意:给出一些队伍的胜负关系,要求排序(胜者在前、无关则序号小者在前),保证有正常排序。
转化成图论,正常排序就是没有环,这里是一个拓扑排序,原理也很好理解,维护节点出度即可。用前向星存图,优先队列排序(注意这里要把大小关系倒过来一下,用友元重载或者用greater)。
一些解题报告指出了重边的问题,邻接矩阵会有这个问题,邻接表和前向星不会有。
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<queue>
using namespace std;
struct node{
int id,fe,ie;
bool friend opera