http://acm.hdu.edu.cn/showproblem.php?pid=1285
因为输入数据一定有解,并且要编号小的队伍在前,那么用优先队列存储结果集即可。
//拓扑排序关键在于需要维护一个入度为0的顶点的集合。(只出不入)
#include
#include
#include
#include
#define Max 510
using namespace std;
struc...
分类:
其他好文 时间:
2014-08-25 13:29:14
阅读次数:
188
题目大意:称职的裁判员忘记了比赛的名次,但还记得谁战胜了谁,给定M组条件,例如A->B 表示A战胜了B,保证信息之间不相互排斥,求输出比赛的名次。
题目分析:是明显的拓扑排序:
在此再介绍一下topsort,核心思想是通过给定的有向无环图确定每个点的入度,比如map[i][j]即表示i战胜了j,此时j的入度+1。但如果存在K点的入度为零,则表示没有人战胜了它,那么他即使排名第一的,然后删除该节...
分类:
其他好文 时间:
2014-08-22 22:36:43
阅读次数:
239
http://acm.hdu.edu.cn/showproblem.php?pid=1285
确定比赛名次
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 11664 Accepted Submission...
分类:
其他好文 时间:
2014-08-07 13:25:20
阅读次数:
191
中文题,不解释。
这是我的第一道拓扑排序题,先来讲一下什么是拓扑排序:
拓扑排序其实就是如果要进行某一项活动的时候,它的基础活动要先进行。比如说,学概率论之前必须要学会高等数学,那么高等数学就是学概率论的前提条件,这就牵涉到先后课程怎么学习,就是谁先学谁后学习, 拓扑排序就是解决这类问题的。
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=128...
分类:
其他好文 时间:
2014-08-07 13:22:01
阅读次数:
203
题意还是比较容易理解的,关键要看到后面的:合条件的排名可能不是唯一的,此时要求输出时编号小的队伍在前;
思路:这道题就是拓扑排序的经典应用了,用队列做的考虑优先编号小的出队就可以了。
拓扑排序:
拓扑排序是对有向无回路图(DAG)顶点的一种排序,它使得如果存在从u到v的有向路径,那么满足序列中u在v前。
所以我们的算法可以描述为这样一个过程:
1、找到整个图中所有的度为0的点,将这些点压...
分类:
其他好文 时间:
2014-08-06 10:38:51
阅读次数:
199
确定比赛名次
Time Limit: 2000/1000 MS (Java/Others) Memory Limit:
65536/32768 K (Java/Others)
...
分类:
其他好文 时间:
2014-08-06 02:00:30
阅读次数:
214
第一道拓扑排序题。。
拓扑排序就是一个有向图,如果这个图有环就不能用拓扑排序。
对于拓扑排序就是将没有进只有出的点或别的先出。。出来后将原来图中与输出有关的线全部删除,直到找不到这要的点或数据。。
#include
#include
#include
#include
using namespace std;
int s[505][505];
int a,b;
int w[10...
分类:
其他好文 时间:
2014-08-05 19:27:10
阅读次数:
198
原题http://acm.hdu.edu.cn/showproblem.php?pid=1285
确定比赛名次
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 12093 Accepted Submission(s): 481...
分类:
其他好文 时间:
2014-08-03 12:54:45
阅读次数:
283