图论-spfa
tzb592825420
这个作者很懒,什么都没留下…
展开
-
cf287 Breaking Good
题意:从1到n找一条最短路径,使路径上修好的路尽可能多,路径上未修好的路要修好,非路径上已修好的路要破坏。输出这些要处理的路。 用一次bfs求出1到所有点的最短路径,再次bfs求出最短路径的前提下的最大修好的路,并记录前驱,再次bfs输出。 #include #include #include #include #include #include #include #include #incl原创 2015-01-27 12:31:10 · 475 阅读 · 0 评论 -
spfa算法
粗略讲讲SPFA算法的原理,SPFA算法是1994年西安交通大学段凡丁提出 是一种求单源最短路的算法 算法中需要用到的主要变量 int n; //表示n个点,从1到n标号 int s,t; //s为源点,t为终点 int d[N]; //d[i]表示源点s到点i的最短路 int p[N]; //记录路径(或者说记录前驱) queue q; //一个队列,用STL实现,当然转载 2014-12-04 11:12:19 · 536 阅读 · 0 评论 -
zoj3847 Collect Chars
点击打开链接 题意:从@开始走,走到任何一个字母节点可以捡起>=1个字母,找到给定字符串集合中的任一个字符串的最小步数。 分析:对给出的字符串建ac自动机,从@开始走,dp[i][j][k]代表在自动机的节点i,位于(j,k)点走的最小步数,用spfa转移。 #include #include #include #include #include #include #include #inc原创 2015-03-13 19:45:50 · 522 阅读 · 0 评论