摘要: http://acm.hdu.edu.cn/showproblem.php?pid=3072最近为了CF上的一道题,又把强连通分支的tarjan算法看了一遍,为了加深印象,就做了HDU上的这题。。。。题意:有一个情报系统,要从0开始传播一个情报,如果两个人可以互达那么两人之间的传播费用为0 ,否则两人之间的传播费用为ci,求要情报传达到每个人的最小费用。思路:既然一个强连通分支内的传播费用为0,求图中有几个强连通分支,缩点后求各点之间的最小费用。代码:View Code #include <stdio.h>#include <stdlib.h>#include < 阅读全文
posted @ 2012-11-03 11:28 Misty_1 阅读(208) 评论(0) 推荐(0) 编辑
摘要: A.Ring road想了N题,甚至重新学习了一遍强连通分支,但事实上,它是用dfs做的,郁闷啊!题意:有N个城市,原来每个城市之间有一条双向路,但是为了交通安全全都改成了单向路,每条路的费用为ci,求为了使任一城市都能到达其他个城市需要增加路的最小费用。解题过程:原来是想找一下图中有几个强连通分支,强连通分支中的任意两个城市一定是互达的,缩点后求各点之间的最小费用,不过这个想法连第一个样例都过不了,因为不需要在每两个点之间都建一条路,而是任意两点可以借助其他缩点互达即可,所以缩完点后,还要求一个强连通图最小权值,这个问题暂时还没想到方法,所以只好放弃。参考了一下别人的思路,似乎都是用dfs做 阅读全文
posted @ 2012-11-03 11:00 Misty_1 阅读(248) 评论(0) 推荐(0) 编辑