HDU

来源:互联网 发布:写歌词软件 编辑:程序博客网 时间:2024/06/14 16:41
/**很裸的模板题;*/#include<iostream>#include<cstdio>#include<cstring>using namespace std;const int inf=0x3f3f3f3f;int mmp[110][110],dis[110];int num;bool vis[110];void  prime(){    int k,Min,sum=0;    memset(vis,false,sizeof(vis));    vis[1]=true;    for(int i=1;i<=num;i++)       dis[i]=mmp[1][i];    for(int i=1;i<=num;i++)    {        Min=inf;        for(int j=1;j<=num;j++)        {            if(!vis[j]&&temp>dis[j])            {                 temp=dis[j];                 k=j;            }        }        if(Min==inf) break;        vis[k]=true;        sum+=Min;        for(int j=1;j<=num;j++)        {            if(!vis[j]&&dis[j]>mmp[k][j])                   dis[j]=mmp[k][j];        }    }    printf("%d\n",sum);}int main(){    int a,b,c,tem,result;    while(scanf("%d",&num)!=EOF&&num)    {        memset(mmp,inf,sizeof(mmp));        tem=(num*(num-1))/2;        for(int i=1;i<=tem;i++)        {           scanf("%d %d %d",&a,&b,&c);           mmp[a][b]=mmp[b][a]=c;        }      prime();    }    return 0;}
原创粉丝点击