博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj 2485 Highways (prim)
阅读量:6818 次
发布时间:2019-06-26

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

题不难,题目很难...

读了好几遍还是给理解错了,纠结!

就是求最小生成树里最大的边权值,拿过来poj1287一改就交,果断WA..仔细一看,权值的更新给搞错了,这是要让我郁闷到极点啊!

#include<cstdio>
#define Max(a, b)   a>b?a:b
#define Min(a, b)   a>b?b:a
using 
namespace std ;
int map[
505][
505] ;
int dis[
505] ;
int n ;
int prim(){
    
int i, j, ans = 
0, x = 
1 ;
    
for(j=
1; j<=n; j++)
        dis[j] = map[x][j] ;
    
for(i=
2; i<=n; i++){
        
int min = 
65537 ;
        
for(j=
1; j<=n; j++){
            
if(min>dis[j]&&dis[j]!=
0){
                min = dis[j] ;
                x = j ;
            }
        }
        dis[j] = 
0 ;
        ans = Max(ans, min) ;
        
for(j=
1; j<=n; j++)
            dis[j] = Min(dis[j], map[x][j]) ;
    }
    
return ans ;
}
int main(){
    
int t, i, j, ans ;
    scanf(
"
%d
", &t) ;
    
while(t--){
        scanf(
"
%d
", &n) ;
        
for(i=
1; i<=n; i++)
            
for(j=
1; j<=n; j++)
                scanf(
"
%d
", &map[i][j]) ;
        ans = prim() ;
        printf(
"
%d\n
", ans) ;
    }
    
return 
0 ;

} 

转载于:https://www.cnblogs.com/xiaolongchase/archive/2012/01/22/2328721.html

你可能感兴趣的文章
hdu1406
查看>>
Android 开发工具下载中文网站
查看>>
Redis 列表处理
查看>>
The vim syntax of systemd unit file
查看>>
关于Linux库文件的制作--普通的静态库、动态库
查看>>
yum install tomcat
查看>>
android 股票数据通过日K获取周K的数据 算法 源码
查看>>
关于Linux运维的一些题目总结
查看>>
原生js实现查询天气的小应用
查看>>
分享两个必应壁纸接口,可用来获取高质量壁纸和故事
查看>>
tomcat启动脚本
查看>>
ASP.NET-FineUI开发实践-10
查看>>
小猪决定做一件尝试
查看>>
linux下jdk的安装:
查看>>
Ajax_ajax模板引擎 ---tmplate.js处理数据和标签拼接
查看>>
微信小程序-下拉松开弹不回去顶部留一段空白
查看>>
[摘录]感受弗兰克尔的故事
查看>>
jmeter响应时间与postman响应时间为什么不一样?
查看>>
HTTPonly属性
查看>>
显示磁盘信息
查看>>