hdu 2122:Ice_cream’s world III
2015-08-18 15:59
337 查看
人生第一次1A
写完即AC
艾玛高兴坏了
拉个屎冷静一下 = =
写完即AC
艾玛高兴坏了
拉个屎冷静一下 = =
#include<stdio.h> #include<string.h> #include<algorithm> #include<map> #include<math.h> #define maxn 1111 #define inf 0xfffffff using namespace std; int treedis[maxn]; int dis[maxn][maxn]; bool vex[maxn]; int n; int cost; int prim() { int i,j,v; vex[0]=true; cost=0; int minn; int flag; for(i=0;i<n;i++) treedis[i]=dis[0][i]; for(i=1;i<n;i++) { minn=inf; flag=0; for(j=0;j<n;j++) { if(vex[j]==false&&minn>treedis[j]) { minn=treedis[j]; v=j; flag=1; } } if(flag==1) { cost+=minn; vex[v]=true; for (j=0;j<n;j++) { if(vex[j]==false&&treedis[j]>dis[v][j]) { treedis[j]=dis[v][j]; } } } else return 0; } return 1; } int main() { int i,j,s,t,c,m; while(~scanf("%d %d",&n,&m)) { for(i=0;i<n;i++) for(j=0;j<n;j++) dis[i][j]=inf; for(i=0;i<n;i++) { vex[i]=false; dis[i][i]=0; } while(m--) { scanf("%d %d %d",&s,&t,&c); if(c<dis[s][t]) dis[s][t]=dis[t][s]=c; } int x=prim(); if(x==0) { printf("impossible\n"); printf("\n"); } else { printf("%d\n",cost); printf("\n"); } } return 0; }
相关文章推荐
- Hibernate各种主键生成策略与配置详解(转)
- 爱前需过“无情劫”
- Android随笔:属性
- JEMETER 录制
- UCSS概念设计
- maven 2 Can not find parent:.....
- 我学正则表达式——价格之争( | 和\t的用法)
- List<? extends object> 解释
- Balloon Comes!
- LINK - Objective-C to C#
- 读 《你不知道的javascript》 思维脑图
- 图解http 学习
- UIWebView的缓存策略,清除cookie
- unity3d优化总结篇
- 日本综艺节目
- Android手机自动化测试真机运行
- 【转载】素数快速打表(据说是线性复杂度)
- 编码规范:Eclipse Code Templates设置
- jQuery Lazy Load 图片延迟加载
- 黑马程序员_IO_file对象以及对象序列化