逃生
思路:刚开始以为直接拓扑排序就可以,其实不然。题目的意思是:如果有满足拓扑排序
的多种情况的前提下,让1先尽量靠前,满足1尽量靠前之后,让2尽量靠前,而不是直接
的字典序。
比如:
4 2
3 2
4 1
结果应为4 1 3 2,而不是3 2 4 1。
所以进行反向建边,然后拓扑排序,用链式前向星存储图,为了使得序号小
的点尽量靠前,所以用优先队列存储将入度为0的点,在逐一取出,遍历该点
的边,就使得大的点尽量靠前,最后逆序输出就可以了。
Time Limit: 2000/1000 MS (J...
分类:
编程语言 时间:
2014-12-22 16:21:37
阅读次数:
192
题目大意:老板要发酬劳,但是工人酬劳不一样,有N个人,M种情况。a的酬劳一定
要高于b。每个人最低酬劳为888,问:老板最少要花费多少钱。
思路:以b->a为有向边建立拓扑排序,不满足排序就输出"-1",否则就进行拓扑排序,
将拓扑排序的点看成一层一层的,无入度的为第一层,通过一条边能走到的为第二层。
通过两条边才能走到的为第三层。每一层都比前一层多一块钱。最后输出总钱数。...
分类:
编程语言 时间:
2014-12-22 16:13:51
阅读次数:
252
其实hihocoder里的题目目前大都是模板题啊-。-这周的是SPFA,暑假的时候有看过SPFA,不过一直用的都是Dijkstra,感觉spfa要更加简洁一点~~,今天找了一份之前一直都看不太懂所以就没怎么用的模板==,今天耐下心来观摩最终还是看懂了hh。======================...
分类:
其他好文 时间:
2014-12-22 00:56:43
阅读次数:
154
#1015 : KMP算法时间限制:1000ms单点时限:1000ms内存限制:256MB描述小Hi和小Ho是一对好朋友,出生在信息化社会的他们对编程产生了莫大的兴趣,他们约定好互相帮助,在编程的学习道路上一同前进。这一天,他们遇到了一只河蟹,于是河蟹就向小Hi和小Ho提出了那个经典的问题:“小Hi...
分类:
其他好文 时间:
2014-12-21 20:38:44
阅读次数:
723
#1082 : 然而沼跃鱼早就看穿了一切时间限制:1000ms单点时限:1000ms内存限制:256MB描述fjxmlhx每天都在被沼跃鱼刷屏,因此他急切的找到了你希望你写一个程序屏蔽所有句子中的沼跃鱼(“marshtomp”,不区分大小写)。为了使句子不缺少成分,统一换成 “fjxmlhx” 。输...
分类:
其他好文 时间:
2014-12-21 00:41:23
阅读次数:
253
#include
#include
using namespace std;
int tp[11][11],visit[11];
int main()
{
int n,m,i,j,k,s,o,c;
int flag,count,a,b;
while(cin>>n>>m)
{
s=1;
o=0;
count=0;
memset(tp,0,sizeof(tp));
m...
分类:
其他好文 时间:
2014-12-20 23:30:09
阅读次数:
216
有向拓扑排序的应用 首先输入n个点,表示有向图中有n个顶点,接下来n行, 每行输入几个数字,第i行的数字表示它们是顶点i的后继节点,输出要求保证该行的编号要在这几个数前面,当数字为0时,表示i点没有后继节点了。 就是要求输出这个有向图的拓扑序列。[输入输出]:[样例]: Sample Input50...
分类:
编程语言 时间:
2014-12-20 22:03:48
阅读次数:
203
题目大意:给你一个有向图,判断是否有环。
思路:构建拓扑排序,如果排序失败,说明该有向图存在有向环。
另一种思路,用链式前向星存储图,在数据输入的同时统计每个点的入度,
并存入indegree数组,每删除一个点,就遍历以这个点为起点的边,将边
对应的入度减1即可选择并删除下一点。用队列来存储已发现的入度为0的
点,更新入度的同时更新这个队列。如果最终得到队列中的元素个数小于
总的元素个数,说明排序失败,存在环。...
分类:
编程语言 时间:
2014-12-19 22:06:40
阅读次数:
264
有向图的拓扑排序拓扑排序是可以用图模拟的另外一种操作,他可以用于表示一种情况,某些事件必须按照特定的顺序排列或者发生。,比如说课程的优先关系。拓扑排序算法思想不一般但是算法很简单1:找到一个没有后继的顶点。2:从图中删除这个顶点,在列表的前面插入该顶点标记。重复步骤一和二直到所有的顶点的被删除这个时...
分类:
编程语言 时间:
2014-12-18 18:31:36
阅读次数:
195
主要是对图算法做一总结. 最基本的图算法思想是dfs和bfs,dfs组要是用于考察图的结构时使用而bfs一般用于求解无权最短路径问题. 拓扑排序依赖于dfs算法,拓扑排序可以解决事件依赖关系,强连通分支问题以及单源最...
分类:
编程语言 时间:
2014-12-18 12:08:08
阅读次数:
189