poj 2421(prime)

来源:互联网 发布:人工智能科学家 编辑:程序博客网 时间:2024/05/16 00:41
/** * prime 算法 * */import java.util.*;public class Main {Scanner sc=new Scanner(System.in);final int MAX=9999999;int n;int[][] mat;int[] low;boolean[] visit;void prime(){for(int i=2;i<=n;i++)low[i]=mat[1][i];low[1]=MAX;visit[1]=true;int sum=0;for(int k=2;k<=n;k++){int index=k;int min=MAX;for(int i=2;i<=n;i++){if(min>low[i]){min=low[i];index=i;}}sum+=min;low[index]=MAX;visit[index]=true;for(int i=2;i<=n;i++){if(mat[index][i]<low[i]&&!visit[i])low[i]=mat[index][i];}}System.out.println(sum);}void init(){n=sc.nextInt();mat=new int[n+1][n+1];low=new int[n+1];visit=new boolean[n+1];for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)mat[i][j]=sc.nextInt();int q=sc.nextInt();for(int i=0;i<q;i++){int t1=sc.nextInt(),t2=sc.nextInt();mat[t1][t2]=mat[t2][t1]=0;}prime();}public static void main(String[] args) throws Exception {new Main().init();}}

原创粉丝点击