• poj 1258 AgriNet


    简单的模板题:prim算法适合浓密图:

     1 #include<stdio.h>
     2 #include<string.h>
     3 #define MAXN 110
     4 #define INF 100000000
     5 
     6 int n, v[MAXN], low[MAXN], w[MAXN][MAXN];
     7 
     8 void solve()
     9 {
    10         int ans = 0;
    11         memset(v,0,sizeof(v));
    12         v[0] = 1;
    13         for(int i = 1; i < n; i ++) low[i] = w[0][i];
    14         for(int i = 0; i < n-1; i ++)
    15         {
    16             int min = INF, p;
    17             for(int j = 0; j < n; j ++)
    18                 if(!v[j] && low[j] < min) min = low[j], p = j;
    19             v[p] = 1;
    20             ans += min;
    21             for(int j = 0; j < n; j ++)
    22                 if(!v[j] && low[j] > w[p][j]) low[j] = w[p][j];
    23         }
    24         printf("%d\n",ans);
    25 }
    26 
    27 int main()
    28 {
    29     while(~scanf("%d",&n))
    30     {
    31         for(int i = 0; i < n; i ++)
    32             for(int j = 0; j < n; j ++)
    33             {
    34                 int a;
    35                 scanf("%d",&a);
    36                 w[i][j] = a;
    37             }
    38             solve();
    39     }
    40     return 0;
    41 }
  • 相关阅读:
    Windows进程/线程创建过程
    固件安全研究
    区块链安全研究的总结
    CoTreatAsClass一些注意事项
    Ring3 读取SSDT
    User Mode Scheduling
    首次异常和二次异常
    offer终于有着落了
    AtomBombing
    Retn
  • 原文地址:https://www.cnblogs.com/yuzhaoxin/p/2623756.html
Copyright © 2020-2023  润新知