博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj1125
阅读量:5265 次
发布时间:2019-06-14

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

简单floyd算法应用,适合刚学floyd练手(比如我)

#include 
#include
#define INF (1<<20)#define NUM 101#define MIN(a,b) ((a)<(b)?(a):(b))#define MAX(a,b) ((a)>(b)?(a):(b))int num;int map[NUM][NUM];int min,last,minnum;void floyd(){ for(int k=1;k<=num;++k) for(int i=1;i<=num;++i) for(int j=1;j<=num;++j) map[i][j]=MIN(map[i][k]+map[k][j],map[i][j]);}int main(){ while(scanf("%d",&num),num) { for(int i=1;i<=num;++i) for(int j=1;j<=num;++j) map[i][j]=(i==j?0:INF); for(int i=1,n;i<=num;++i) { scanf("%d",&n); for(int j=1,a,b;j<=n;++j) { scanf("%d %d",&a,&b); map[i][a]=b; } } floyd(); min=INF; for(int i=1;i<=num;++i) { last=0; for(int j=1;j<=num;++j) last=MAX(last,map[i][j]); if(min>last) { minnum=i; min=last; } } if(min!=INF) printf("%d %d\n",minnum,min); else printf("disjoint\n"); } return 0;}

  

转载于:https://www.cnblogs.com/mengxm-lincf/archive/2012/02/09/2344412.html

你可能感兴趣的文章
MyEclipse DB Browser使用图文全攻略
查看>>
poj3320 Jessica's Reading Problem(尺取思路+STL)
查看>>
A - Vasya and Socks
查看>>
项目管理、设计开发、代码管理、bug管理工具介绍
查看>>
分布式计算开源框架Hadoop介绍
查看>>
安卓平台接口剖析
查看>>
linux文件编码查看与修改
查看>>
[Java] 系统环境变量配置
查看>>
坏的事情不都会带来坏的结果
查看>>
设置placeholder的样式
查看>>
RPC的基础:调研EOS插件http_plugin
查看>>
HIT1946 希尔伯特分形曲线(dfs)
查看>>
第二次团队冲刺第二天
查看>>
青瓷引擎之纯JavaScript打造HTML5游戏第二弹——《跳跃的方块》Part 2
查看>>
bzoj 2257 (JSOI 2009) 瓶子与燃料
查看>>
11)Java abstract class 和 interface
查看>>
使用xrdp或Xmanager 远程连接 CentOS6
查看>>
CDC类介绍
查看>>
SEH简单研究
查看>>
Dubbo -- 系统学习 笔记 -- 配置参考手册
查看>>