做多校的时候遇见一个求拓扑排序数量的题,就顺便来写了一下。题意: 你有个朋友是KOF的狂热粉丝,他有一个对其中英雄的强弱比较,让你根据这些比较关系来给这些英雄排名。问一共有多少种排名方式。思路: 用dp[S]记录当前状态的数量。 S表示拓扑排序中当前阶段已经被排序的点的集合。然后就可以枚举当前排.....
分类:
其他好文 时间:
2014-08-06 18:17:24
阅读次数:
315
题意还是比较容易理解的,关键要看到后面的:合条件的排名可能不是唯一的,此时要求输出时编号小的队伍在前;
思路:这道题就是拓扑排序的经典应用了,用队列做的考虑优先编号小的出队就可以了。
拓扑排序:
拓扑排序是对有向无回路图(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://poj.org/problem?id=3249题意:给一个有向无环图DAG(不一定联通),每个点有权值,入度为0的点为起点,出度为0的点为终点,选择一个起点走到一个终点,使得路上的权和最大。分析:dp[to] = max(dp[from]) + value[to],然后先拓扑排序保证状...
分类:
其他好文 时间:
2014-08-05 00:05:48
阅读次数:
275
这题是今天下午BNU SUMMER TRAINING的C题是队友给的解题思路,用拓扑排序然后就可以了最后是3A其中两次RE竟然是因为:scanf("%d",mm);ORZ以后能用CIN还是CIN吧 QAQ贴代码了: 1 #include 2 #include 3 #include 4 #in...
分类:
其他好文 时间:
2014-08-04 23:57:48
阅读次数:
596
Frame Stacking
Time Limit: 1000MS
Memory Limit: 10000K
Total Submissions: 4074
Accepted: 1371
Description
Consider the following 5 picture frames placed on an 9 x 8...
分类:
其他好文 时间:
2014-08-03 18:06:45
阅读次数:
269
题目大意:
n个人,m条边,每条边a,b 表示a比b的工资要多,每个人的工资至少888,问满足关系的工资总和至少多少?如果出现关系矛盾,输出-1
解题思路:
根据工资关系建立拓扑图,0入度的人工资从888开始,一层一层,逐渐增加工资,若最后还有人入度不为0,则出现矛盾。...
分类:
其他好文 时间:
2014-08-03 18:03:26
阅读次数:
224
原题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