Prim算法求最小生成樹

給定一個n個點m條邊的無向圖,圖中可能存在重邊和自環,邊權可能為負數。

求最小生成樹的樹邊權重之和,如果最小生成樹不存在則輸出impossible。

給定一張邊帶權的無向圖G=(V, E),其中V表示圖中點的集合,E表示圖中邊的集合,n=|V|,m=|E|。

由V中的全部n個頂點和E中n-1條邊構成的無向連通子圖被稱為G的一棵生成樹,其中邊的權值之和最小的生成樹被稱為無向圖G的最小生成樹。

輸入格式

第一行包含兩個整數n和m。

接下來m行,每行包含三個整數u,v,w,表示點u和點v之間存在一條權值為w的邊。

輸出格式

共一行,若存在最小生成樹,則輸出一個整數,表示最小生成樹的樹邊權重之和,如果最小生成樹不存在則輸出impossible。

數據范圍

1n500

,
1m105

,
圖中涉及邊的邊權的絕對值均不超過10000。

輸入樣例:

4 5
1 2 1
1 3 2
1 4 3
2 3 2
3 4 4

輸出樣例:

6
#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
const int N=501,INF=0X3f3f3f3f;
int n,m,g[N][N],dis[N];
bool st[N];
void prim(){memset(dis,0x3f,sizeof(dis));int res=0;for(int i=0;i<n;i++){int t=-1;for(int j=1;j<=n;j++){if(!st[j]&&(t==-1||dis[t]>dis[j]))t=j;}if(i&&dis[t]==INF){cout<<"impossible"<<endl;return ;}if(i)res+=dis[t];for(int j=1;j<=n;j++)dis[j]=min(dis[j],g[t][j]);st[t]=true;}cout<<res<<endl;
}
int main(void){cin>>n>>m;memset(g,0x3f,sizeof(g));for(int i=0,a,b,c;i<m;i++){cin>>a>>b>>c;g[a][b]=g[b][a]=min(g[a][b],c);}prim();return 0;
}

?

轉載于:https://www.cnblogs.com/programyang/p/11197200.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/277181.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/277181.shtml
英文地址,請注明出處:http://en.pswp.cn/news/277181.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

用installshield打包的asp.net程序

現在需要打包一個asp.net程序&#xff0c;具體要求如下&#xff1a;1、動態建立web虛擬目錄或web站點&#xff0c;并保存至web.config文件相關字段中。2、動態建立ftp目錄&#xff0c;并保存至web.config文件相關字段中。3、動態建立數據庫聯接類型sql或oracle&#xff0c;對sq…

合肥工業大學計算機學院王院長,王青山(合肥工業大學教授)_百度百科

王青山(合肥工業大學教授)語音編輯鎖定討論上傳視頻本詞條缺少概述圖&#xff0c;補充相關內容使詞條更完整&#xff0c;還能快速升級&#xff0c;趕緊來編輯吧&#xff01;王青山&#xff0c;中國漢族人&#xff0c;合肥工業大學教授&#xff0c;現任中國計算機學會、ACM、IEE…

go 中gcc 編譯問題(gcc.exe fatal error no input files compilation terminated)

2019獨角獸企業重金招聘Python工程師標準>>> 問題背景 在windows 中編譯 go 的pipe時由于pipe依賴sqlite&#xff0c;需要通過cgo進行編譯。出現如下異常 gcc.exe fatal error no input files compilation terminated 問題分析 由于 windows中缺少c 的編譯環境 解決…

35歲以前把下面十件事做好

35歲是青春的后期&#xff0c;35歲以后是收獲的季節&#xff0c;如果你沒有資格說這句話&#xff0c;你將會憎恨自己。所以在35歲以前&#xff0c;在爛漫蓬勃的青春年華里&#xff0c;你最好把下面十件事做好&#xff1a; 第一&#xff0c;學會本行業所需要的一切知識并有所發展…

XCode 10 升級問題總結

一、 library not found for -lstdc.6.0.9 xcode 10 中刪除了內置 libstdc.6.0.9.tbd&#xff0c;工程中一些SDK依賴這個庫&#xff0c;需要把xcode 9.4 的libstdc.6.0.9.tbd 添加到xcode中&#xff0c;重啟xcode。 libstdc.6.0.9.tbd 的下載地址&#xff1a;libstdc.6.0.9 真機…

重心轉移

做了好些時候的題了&#xff0c;發現做題對身體的摧殘比普通的寫代碼還要重的多&#xff0c;為了我的眼睛&#xff0c;還是不要那么賣命的做ACM了&#xff0c;反正這個假期還算是比較有收獲。而且&#xff0c;在沒有指導老師的幫助下做難題&#xff0c;根本就是一條艱巨異常的路…

ArcEngine開發體驗(附許可)

ArcGIS Engine Developer Guide ArcGIS9.0開發文檔《Engine_Developers_Guide.pdf》376 &#xff0c;花了兩三天看完了。guide特點&#xff1a;1 guide里面的基礎性的東西很多&#xff0c;涉及com開發應用&#xff0c;開發語言&#xff0c;環境和ao架構介紹的內容2 介紹.net開發…

安裝mysql-connector-python-8.0.11-py3.6遇到問題

1.提示“This application requires Visual Studio 2015 Redistributable” 下載vc_redist.x86安裝即可。 下載鏈接&#xff1a;https://download.microsoft.com/download/6/D/F/6DF3FF94-F7F9-4F0B-838C-A328D1A7D0EE/vc_redist.x86.exe https://download.microsoft.com/downl…

北京科技計算機與通信工程學院,北京科技大學計算機與通信工程學院-任超

第一作者或通訊作者(*)論文> 2019年&#xff1a;[7]Chao Ren, H. Zhang*, J. Chen and C. Tellambura. "Exploiting Spectrum Access Ability for Cooperative Spectrum Harvesting". IEEE Transactions on Communications, vol. 67, no. 3, pp. 1845-1857, Mar. …

畫閉合的多邊形 - HTML5 Canvas 作圖

10、function DrawPolygon(Canvas,P)功能&#xff1a;畫閉合的多邊形參數&#xff1a;P是一個包含各個頂點坐標的數組實例&#xff1a;<html><script type"text/javascript" src"bigengineer.js"></script><body><canvas id&qu…

計算機網絡硬件的作用是什么,網絡技術在計算機軟硬件的作用

網絡技術在計算機軟硬件的作用電子信息工程是一種建立在計算機系統軟件技術和計算機網絡技術上的工程,在現代國防、科研和通訊等領域發揮著巨大的作用。下面是小編搜集整理的相關內容的論文&#xff0c;歡迎大家閱讀參考。摘要&#xff1a;隨著我國經濟的飛速發展&#xff0c;科…

華為3Com Quidway 2116-SI

上次介紹“華為3Com S1526”經過配置&#xff0c;發現所謂的支持Vlan&#xff0c;其實是無法配置Vlan IP的&#xff0c;所以無法和上級Trunk互聯&#xff0c;所謂的可管理也是超級的簡單&#xff0c;實在是對得起“SOHO”的定位&#xff0c;簡單。不得不更換型號&#xff0c;發…

Linux Makefile 中的陷阱【轉】

轉自&#xff1a;https://blog.csdn.net/QQ1452008/article/details/52247944 版權聲明&#xff1a;本文為博主原創文章&#xff0c;未經博主允許不得轉載。 https://blog.csdn.net/QQ1452008/article/details/52247944前言 每個編寫過Makefile的程序員都可能遇見過Makefile中內…

html錨點

設置錨點的兩種方式 1.設置一個錨點鏈接<a href"#wang">去找汪星人</a> 在頁面中需要的位置設置錨點<a name"wang">汪星人基地</a> 2.設置一個錨點鏈接<a href"#miao">去找喵星人</a> 在頁面中需要的位置設…

大學生計算機課程考試試題,大學生計算機基礎課程考試系統研究與實現

摘要&#xff1a;本文主要針對教學評測領域中的主觀題評測等難點展開研究.過去在教育評測領域雖然廣泛使用測試系統,但由于無法對主觀題進行準確有效的判斷,造成了以客觀題為主的測試局限性.本課題引入智能的算法以實現全自動教學評測,對于教育測試工作有著深遠的現實意義. 本系…

初學Vue.js--數據綁定與文本插值

(一)數據雙向綁定 數據的雙向綁定是Vue.js的核心功能在上一篇記錄中已經簡單創建了一個Vue實例如下 var myVuenew Vue({ el:#myvue//myvue是已經存在的div&#xff0c;其id值為myvue }) 使用選項el掛載成功后&#xff0c;我們可以通過myVue.$el來訪問該元素&#xff0c;如果需要…

網頁色彩搭配的內涵

網頁的色彩搭配往往是網友們感到頭疼的問題&#xff0c;尤其是那些完全沒有美術基礎的網友。到底用什么色彩搭配好看呢&#xff1f;讓我們來看看網友54雨寒的高見吧&#xff01; 一、紅色的色感溫暖&#xff0c;性格剛烈而外向&#xff0c;是一種對人刺激性很強的色。紅色容易引…

VS歷程簡單記錄

當時一開始裝VS2015&#xff0c;是用了很長時間了。裝了之后是可以用的&#xff0c;打了不少代碼的。 后來很長一段時間沒用它了&#xff0c;時隔良久&#xff0c;雙擊快捷方式竟然打開不了&#xff0c;讓我“重裝”。 其實也不用重裝&#xff0c;本機用的Win10&#xff0c;去控…

計算機考研分數2019,2019考研分數線和國家線有什么關系

2019考研學校分數線和國家線有什么區別。國家線即全國碩士研究生考生進入復試基本分數要求&#xff0c;是基礎分數線&#xff0c;要有資格參加復試必須過了這條線。國家線今天大概在3月中旬公布。學校分數線(簡稱學校線)是各招生單位在國家線的基礎上&#xff0c;根據本校有關專…

記錄一次react項目配置過程

1.為什么要配置react而不是腳手架 因為要知其然,最好還要知其所以然&#xff01; 2.配置對象 webpack webpack-dev-server babel eslint 3.配置過程 1.webpack 第一步:引入必須文件 const path require("path"); const webpack require("webpack");//為了…