hdu1875
来源:互联网 发布:淘宝龙瞎多少钱 编辑:程序博客网 时间:2024/06/06 02:07
//自己真的是。。。。哎。。。
//思想上的问题,只要认为已经修建的成本看为0就可以了
//其他的和最小生成树的模板没什么区别
//
#include<iostream>#include<stdio.h>using namespace std;const int MAX=9999999;int map[101][101];int n,flag[101][101],visit[101],low[101],flag1;int prim(){ memset(visit,0,sizeof(visit)); int i,j,result=0,pos,m=0;visit[1]=1;pos=1;for(i=1;i<=n;i++){ if(i!=pos)low[i]=map[pos][i];} for(i=1;i<n;i++){ int min=MAX;for(j=1;j<=n;j++){if(visit[j]==0&&min>low[j]){min=low[j];pos=j;}}if(min!=MAX)result+=min;//if(// cout<<result<<" ";visit[pos]=1;for(j=1;j<=n;j++){if(visit[j]==0&&low[j]>map[pos][j]){low[j]=map[pos][j];}}}return result;}int main(){while(cin>>n,n){memset(flag,0,sizeof(flag));int m=n*(n-1)/2,i,j;for(i=1;i<=n;i++){for(j=1;j<=n;j++){map[i][j]=MAX;}}int a,b,c,d;while(m--){scanf("%d%d%d%d",&a,&b,&c,&d);map[a][b]=c;map[b][a]=c;if(d==1){map[a][b]=0;map[b][a]=0;//flag[a][b]=1;//flag[b][a]=1;}}//for(i=1;i<=n;i++)//cout<<flag[i]<<" ";int ans=prim();printf("%d\n",ans);}}
0 0
- hdu1875
- hdu1875
- hdu1875
- HDU1875
- HDU1875
- HDU1875
- hdu1875
- hdu1875
- hdu1875
- hdu1875
- hdu1875(prime())
- hdu1875最小生成树
- hdu1875 最小生成树
- prime模板题HDU1875
- HDU1875 还是畅通工程
- 【HDU1875】【最小生成树水题】
- 畅通工程再续 hdu1875
- hdu1875 畅通工程再续
- datagridview 出错问题
- hadoop 集群及hbase集群的pid文件存放位置
- nil 和 releasse 作用
- 自定义语言的实现——解释器模式
- HDU 3001 Travelling ( 状态压缩 )
- hdu1875
- python协程入门(greenlet)
- jsp页面声明对jstl的支持
- 修改standby库的sys用户的密码导致DG无法传输日志及切换
- SAP学习5-PARAMETERS
- Genymotion--Unable to create Genymotion virtual devices:Connection timeout
- 代码重构
- 线性表顺序存储结构的一般操作
- Linux日志管理之详解syslog/vsyslog