最小生成树问题:(用prim算法)
/*题意:Flatopia岛要修路,这个岛上有n个城市,要求修完路后,各城市之间可以相互到达,且修的总
路程最短.求所修路中的最长的路段*/#include#define MAX 502 using namespace std; int str[MAX][MAX]; bool visit[MAX];//标记数组,没有加入到树中时为false,加入了为true int distan[MAX];//用以记录当前树到各个顶点的最小距离(它会被不断的更新,加入一个顶点更新一次) int n; int prim()//prim算法 { int v,i,j,maxi=0; visit[0]=true;//将第一个顶点加入树中 for(i=0;i str[v][i])//distan[i]中始终放生成树到顶点i的最小权值 { distan[i]=str[v][i]; } } } return maxi; } int main() { int i,j,t; cin>>t; while(t--) { cin>>n; for(i=0;i