最近小哼迷上了《龍門鏢局》,從恰克圖道武夷山,從張家口道老河口,從迪化道佛山,從蒙自道奉天......古代鏢局的運鏢,也就是現在的物流。鏢局每到乙個地方開展業務,都需要堆運鏢途中的綠林好漢進行打點(不給錢就不讓過路)。好說話的打點費就比較低,不好說話的打點費就比較高。城鎮類似如下,頂點是城鎮編號,邊上的值表示這條道路上打點綠林好漢需要的銀子數。
請你幫鏢局算算,如果從1號城鎮出發,遍歷每個城鎮最少需要準備多少打點銀子?輸入第一行包括兩個正整數n,m。n代表城鎮個數,m表示道路個數(1 < n,m < 100)。
後面的m行分別包含三個正整數a,b,c,表示在從城鎮a 到 城鎮b的道路上需要交納的銀子數。
輸出從1號城鎮出發,遍歷每個城鎮最少需要準備的銀子數。
6 92 4 11
3 5 13
4 6 3
5 6 4
2 3 6
4 5 7
1 2 1
3 4 9
1 3 2
19這是kruskal演算法
1 #include2 #include3using
namespace
std;
4struct edge;
9int
n,m;
10int f[103
];11
int num=0,sum=0;//
num表示邊的數量,sum表示最小生成樹的總權
12int cmp(edge x,edge y)
15int getf(int x) 22}
23int merge(int x,int y)
30return0;
31}32int
main()
38for(int i=1;i<=n;i++)
41 sort(e+1,e+m+1,cmp);//
stl排序
42for(int i=1;i<=m;i++)
47if(num==n-1)50}
51 cout<52return0;
53 }
鏢局運鏢(最小生成樹 Kruskal)
7 11 鏢局運鏢 30 分 鏢局的運鏢,就是運貨 類似現在的物流 鏢局每到乙個新地方開展業務,都需要對運鏢途中的綠林好漢進行打點。好說話的打點費就比較低,不好說話的打點費就比較高。龍門鏢局現在有一趟鏢請你來規劃路線,已知城市的地圖,你需要選擇一些道路進行疏通,以便鏢局可以到達任意乙個城市,要求花費...
7 4 龍門鏢局(最小生成樹)
龍門鏢局專門負責為客人運送貨物,從恰克圖到武夷山,從張家口到老河口,從迪化到佛山,從蒙自到奉天,迤邐數千里的商道上,或車馬,或舟楫,或駝馱,或肩挑,貨物往來,錢財遞送。商號開在 鏢局便設在 鏢局每到乙個新地方開展業務,都需要對運鏢途中的綠林好漢進行打點。好說話的打點費就比較低,不好說話的打點費就比較...
最小生成樹演算法
由帶權的連通圖生成的數的各邊加起來稱為生成樹的權,把權值最小的生成樹稱為最小生成樹 minimum spanning tree 簡稱為mst 構造最小生成樹的方法就是利用mst性質,一條一條地選擇可以加入的邊。下面介紹兩種用於構造最小生成樹的演算法,其中第一種演算法稱為prim演算法,第二種演算法稱...