博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu1879------------prim算法模板
阅读量:4316 次
发布时间:2019-06-06

本文共 862 字,大约阅读时间需要 2 分钟。

水题,和1102一样。还不如1863呢!今天好像把连通工程这种类型的题刷光了!嘿嘿嘿,掌握prim后刷一道过一道,好痛快!

AC:

#include<stdio.h>

#include<string.h>
int map[101][101];
int low[101];
int visit[101];
int n;

int prim()

{
 int i,j,k,pos,min;
 int result=0;
 memset(visit,0,sizeof(visit));
 pos=1;
 visit[pos]=1;
 for(i=1;i<=n;i++)
 {
  if(i!=pos)
  low[i]=map[pos][i];
 }
 for(i=1;i<n;i++)
 {
  min=100000000;
  for(j=1;j<=n;j++)
  {
   if(!visit[j]&&min>low[j])
   {
    min=low[j];
    pos=j;
   }
  }
  result+=min;
  visit[pos]=1;
  for(j=1;j<=n;j++)
  {
   if(!visit[j]&&map[pos][j]<low[j])
   low[j]=map[pos][j];
  }
 }
 printf("%d\n",result);
 return 0;
}
 
int main()
{
 int i,j,k;
 int s,e,w,temp;
 while(scanf("%d",&n)!=EOF&&n!=0)
 {
  for(i=1;i<=n*(n-1)/2;i++)
  {
   scanf("%d%d%d%d",&s,&e,&w,&temp);
   if(temp==0)
   map[s][e]=map[e][s]=w;
   if(temp==1)
   map[s][e]=map[e][s]=0;
  }
  prim();
 }
 return 0;
}

转载于:https://www.cnblogs.com/zhangyabin---acm/archive/2012/03/17/2403905.html

你可能感兴趣的文章
日期转换为新数据类型CONVERT() 函数
查看>>
C#设计模式之十外观模式(Facade Pattern)【结构型】
查看>>
Redis进阶实践之十五 Redis-cli命令行工具使用详解第二部分(结束)
查看>>
Git使用gitignore建立项目过滤规则
查看>>
Can you solve this equation?
查看>>
经典算法50题
查看>>
广义距离变换
查看>>
2019年Q1总结+Q2大体规划
查看>>
struts2常用标签
查看>>
初次学习CentOS需要注意的问题
查看>>
初学C#之方法
查看>>
[Kubernetes]深入理解StatefulSet
查看>>
2018.2.2 java中的Date如何获取 年月日时分秒
查看>>
基础知识回顾:闭包
查看>>
luogu P1602 Sramoc问题
查看>>
11.29燃尽图
查看>>
CPU31X-2DP通过DP网络连接远程IO站
查看>>
Ubuntu 10.10更新源列表
查看>>
工作总结:文件对话框的分类(C++)
查看>>
Android log system
查看>>