
#include <iostream>
using namespace std;
// 假设图的大小 100 * 100
#define INF 9999
#define N 101;
int lowcost[N];
int closest[N];
bool s[N];
int graph[N][N];
int n,m;
void Prim(int n){
s[1] = true; // 初始节点
// Step1 初始化
for (int i = 1; i <= n; i++)
{
if(i!=1){
lowcost[i] = graph[1][i];
closest[i] = 1;
}else{
lowcost[i] = 0;
}
}
//Step 在集合中V-U中寻找距离集合U最近的节点T8
for(int i = 1; i < n;i++){
int temp = INF;
int t = 1;
for(int j = 1; j<=n;j++){
if((!s[j])&&(lowcost[j] < temp)){
temp = lowcost[j];
t = j;
}
}
if(temp == INF) break;
s[t] = true;
for(int j = 1; j <=n;j++){
if((!s[j])&& (graph[t][j] < lowcost[j]){
lowcost[j]= c[t][j];
closest[j] = t;7
}
}
}
}
int main(){
cout << "Please, you input node number:";
cin >> n;
cout << "Please, you input edge number:";
cin >> m;
int u,v,w;
cout << "Please,You input u and v and w : ";
for(int i = 1; i <= n; i++)
for(int j = 1; j <= n; j++)
graph[i][j] = INF;
for (int i = 1; i <= m; i++)
{
cin >> u >> v >> w;
graph[u][v] = w;
}
}