zoukankan      html  css  js  c++  java
  • Highways(prim)

    http://poj.org/problem?id=2485

    此题是求最小生成树里的最大权值。prim算法:

     1 #include<stdio.h>
     2 #include<string.h>
     3 const int maxn=505;
     4 const int INF = 1<<28;
     5 int map[maxn][maxn];
     6 int dis[maxn],vis[maxn];
     7 int n,maxm;
     8 void prim()
     9 {
    10     int pos;
    11     for (int i = 1; i <= n; i ++)
    12     {
    13         dis[i] = map[1][i];
    14     }
    15     vis[1] = 1;
    16     for (int i = 1; i <= n-1; i ++)
    17     {
    18         int min = INF;
    19         for (int j = 1; j <= n; j ++)
    20         {
    21             if (!vis[j] && dis[j] < min)
    22             {
    23                 min = dis[j];
    24                 pos = j;
    25             }
    26         }
    27         if(min > maxm)
    28         {
    29             maxm = min;
    30         }
    31         vis[pos] = 1;
    32         for (int j = 1; j <= n; j ++)
    33         {
    34             if (!vis[j] && dis[j] > map[pos][j])
    35                 dis[j] = map[pos][j];
    36         }
    37     }
    38 }
    39 void init()
    40 {
    41     maxm = -1;
    42     for (int i = 0; i <= n; i ++)
    43     {
    44         for (int j = 0; j <= n; j ++)
    45         {
    46             map[i][j] = INF;
    47         }
    48         map[i][i] = 0;
    49         vis[i] = 0;
    50     }
    51 }
    52 int main()
    53 {
    54     int t;
    55     scanf("%d",&t);
    56     while(t--)
    57     {
    58         scanf("%d",&n);
    59         init();
    60         for (int i = 1; i <= n; i ++)
    61         {
    62             for (int j = 1; j <= n; j ++)
    63             {
    64                 scanf("%d",&map[i][j]);
    65             }
    66         }
    67         prim();
    68         printf("%d
    ",maxm);
    69     }
    70     return 0;
    71 }
    View Code
  • 相关阅读:
    131. 分割回文串
    博客开通第二十七天
    博客开通第三十八天
    博客开通第56天
    博客开通第三十三天
    博客开通第61天
    博客开通第62天
    博客开通第二十六天
    博客开通第四十七天
    博客开通第63天
  • 原文地址:https://www.cnblogs.com/lahblogs/p/3245160.html
Copyright © 2011-2022 走看看