Description

XX星球有很多城市,每个城市之间有一条或多条飞行通道,但是并不是所有的路都是很安全的,每一条路有一个安全系数s,s是在 0 和 1 间的实数(包括0,1),一条从u 到 v 的通道P 的安全度为Safe(P) = s(e1)*s(e2)…*s(ek) e1,e2,ek是P 上的边 ,现在8600 想出去旅游,面对这这么多的路,他想找一条最安全的路。但是8600 的数学不好,想请你帮忙 ^_^

Input

输入包括多个测试实例,每个实例包括: 
第一行:n。n表示城市的个数n<=1000; 
接着是一个n*n的矩阵表示两个城市之间的安全系数,(0可以理解为那两个城市之间没有直接的通道) 
接着是Q个8600要旅游的路线,每行有两个数字,表示8600所在的城市和要去的城市

Output

如果86无法达到他的目的地,输出"What a pity!", 
其他的输出这两个城市之间的最安全道路的安全系数,保留三位小数。

Sample Input

3
1 0.5 0.5
0.5 1 0.4
0.5 0.4 1
3
1 2
2 3
1 3

Sample Output

0.500
0.400
0.500 以前求最短路径用的是min函数初始化数组map[][]为正无穷,这题求最大安全度要用max函数初始化数组为负无穷。
 #include<cstdio>
#include<algorithm>
#define INF -0xfffffff
using namespace std;
int n;
double map[][];
void f1()
{
int k,i,j;
for(k = ; k <= n ; k++)
{
for(i = ; i <= n ; i++)
{
for(j = ; j <= n ; j++)
{
map[i][j]=max(map[i][j],map[i][k]*map[k][j]); //计算每两点之间的安全度记录安全度大的
}
}
}
}
int main()
{
double a;
int b,c,i,j,q;
while(scanf("%d",&n)!=EOF)
{
for(i = ; i <= n ; i++)
{
for(j = ; j <= n ;j++)
{
map[i][j]=(i == j)?:INF; //i=j记录1否则记录负无穷
}
}
for(i = ; i <= n ; i++)
{
for(j = ; j <= n ; j++)
{
scanf("%lf",&a);
if(i < j)
{
map[i][j]=map[j][i]=a; //记录每两点间的安全度,为了简便只记录i<j的情况
}
}
}
f1();
scanf("%d",&q);
while(q--)
{
scanf("%d %d",&b,&c);
if(map[b][c] > ) //若两点不同则安全度一定为0否则大于0
printf("%.3f\n",map[b][c]);
else
printf("What a pity!\n");
}
}
}
 

最新文章

  1. 行为型模式之Observer模式
  2. 【树莓派】关于tinyproxy问题处理
  3. React问题总结与归纳
  4. Sql Server 相关错误问题及解决方法
  5. poj1860 bellman—ford队列优化 Currency Exchange
  6. python实现简单爬虫抓取图片
  7. 在Linux下搭建Git服务器的方法是什么样?
  8. 【思路,dp,BigInteger】ZOJ - 2598 Yet Another Digit
  9. background-size 设置背景图片的大小
  10. php代码结尾不要添加结尾标记
  11. Gnome快捷键
  12. ora-01190和ora-01110的解决方法
  13. Python中的threadlocal
  14. codevs 1069 关押罪犯
  15. css中关于单位的一些问题
  16. liunx 安装redis 4.0
  17. 命令行找不到genstrings问题tip
  18. PHP做APP接口时,如何保证接口的安全性??????????
  19. Bate冲刺四——《WAP团队》
  20. windows10系统右键添加cmd命令

热门文章

  1. ufunc函数
  2. linux虚拟机时间不准的问题
  3. AtCoder Grand Contest 015 E - Mr.Aoki Incubator
  4. A Dangerous Maze LightOJ - 1027
  5. Hadoop工作流概念学习系列总述(一)
  6. Codeforces Round #243 (Div. 1)
  7. EmitMapper系列之一:EmitMapper入门
  8. 多线程wait和notify实现1212
  9. AJPFX关于抽象类和接口的区别
  10. 访问TomCat出现的一些异常