摘要:
[关键字]:次小生成树[题目大意]:求出给出图的最小和次小生成树。//=============================================================================[分析]:http://www.cppblog.com/MatoNo1/archive/2011/06/25/147627.html#149420讲的又清楚又详细,ORZMato大神![代码]:kurscal#include<iostream>#include<cstdio>#include<cstdlib>#include<cst 阅读全文
摘要:
[关键字]:图论 第k短路[题目大意]:求出严格次短路。//===================================================================================[分析]:首先先说K短路的求法。利用A*去求,首先先spfa处理出T到每个点的距离作为A*中的h[],在从起点开始进行搜索,g[]是从起点到当前点已经走过的距离,f[i]=g[i]+h[i]。每次选取最小的f出队并更新其他节点。可以证明一个节点出队k次它的f值就是从s到它的第k短路的长度(非严格)。每次出队是已经出的超过k次的就忽略,如果t点出过k次就算求出了第k短路。如 阅读全文
摘要:
[关键字]:最小生成树[题目大意]:在一个图里找到一颗生成树,要求选定一个根后从这个根到每一个点都走一边每经过一个点i需要停留di分钟每条边需要ei分钟根还要额外加两遍所得值最小。//====================================================================================================[分析]:因为每加入一条边(x,y),所增加的代价就是ei+dy+ei+dx,又因为所有边都加入后作为根的那个点少加了一次为了让最终结果最小需要选取最小的点作为根并让ans加上它的权值。所以可以以权值最小的点位起点, 阅读全文